如何使用EF6数据上下文返回一个通用实体

本文关键字:一个 实体 EF6 何使用 数据 上下文 返回 | 更新日期: 2023-09-27 18:06:25

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

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

现在的目的是创建一个泛型方法,以便根据所提供的类型从数据上下文中返回Person实体或Subscription实体。

在Linq2SQL我能够使用.GetTable<T>方法,我怎么能做同样的在这里与EntityFramework 6?.Mapping部分甚至不能被智能感知识别,所以我在这里错过了一些基本的东西。

谢谢

如何使用EF6数据上下文返回一个通用实体

DbContext提供了Set方法。您可以将其用作泛型方法:

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

或非泛型:

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