使用EF数据库第一种方法创建通用抽象类

时间:2017-08-14 11:00:47

标签: c# entity-framework generics c#-4.0 abstract-class

我有一些类似的实体,我想为它们创建CRUD操作的通用抽象类,但我不知道如何访问泛型类中的实体。例如:

public abstract class HeaderRepository<T>
{
    public HeaderRepository()
    {

    }

    public virtual byte[] Insert(T item)
    {
        using (MyEntities context = new MyEntities())
        {
            context.*****  <-- What I should write to add an object to entity T
        }
    }
}

我希望我能得到它。

1 个答案:

答案 0 :(得分:1)

您需要设置数据库集。最好在类级别拥有一个私有变量,在构造函数中设置然后使用它。

using (MyEntities context = new MyEntities())
    {
        DbSet<T> dbSet = context.Set<T>();
        dbSet.Add(...) //Whatever your operation is. 
    }