如何使用EF6 datacontext返回通用实体?

时间:2014-06-03 20:58:40

标签: c# entity-framework entity-framework-6

我有一个简单的数据库,其中包含“Person”和“Subscription”表,其中每个人都有一个或多个订阅。

    private MyDBContext_dbContext;       

    public T GetByID(int ID)
    {
        return _dbContext.Mapping. ??
    }

现在的目的是创建一个泛型方法,根据提供的类型从datacontext返回Person实体或Subscription实体。

在Linq2SQL中,我能够使用.GetTable<T>方法,我如何在EntityFramework 6中做同样的事情?智能感知甚至无法识别.Mapping部分,所以我在这里缺少一些基本的东西。

谢谢

1 个答案:

答案 0 :(得分:1)

DbContext为您提供Set方法。您可以将其用作通用方法:

DbSet<Person> people = DbContext.Set<Person>();

或非泛型:

DbSet<Person> people = DbContext.Set(typeof(Person)) as DbSet<Person>;