2010-05-04 73 views
2

我想创建一个对于我的所有实体都具有一定通用性的基类。该类将具有诸如Save(),Delete(),GetByID()等一些基本功能和属性的方法。我对Linq to SQL有更多的经验,并希望在EF中获得一些类似的好例子。谢谢。为实体框架中的实体创建基类

回答

1

ADO.NET实体框架支持Table-per-hierarchy和Table-per-type继承。我建议你开始here看看它是如何工作的。

2

像这样:

public abstract class BaseObject<T> 
    { 
     public void Delete(T entity) 
     { 
      db.DeleteObject(entity); 
      db.SaveChanges(); 
     } 

     public void Update(T entity) 
     { 
      db.AcceptAllChanges(); 
      db.SaveChanges(); 
     } 
    } 

    public interface IBaseRepository<T> 
    { 
     void Add(T entity); 

     T GetById(int id); 
     IQueryable<T> GetAll(); 
    } 
+0

你怎么处理的界面呢? – 2012-09-18 18:11:17

+0

该类似乎缺少DBContext对象“db”声明。 – 2012-09-18 18:44:06