views:

203

answers:

2

I would like to create a base class that is somewhat generic for all of my entities. The class would have methods like Save(), Delete(), GetByID() and some other basic functionality and properties. I have more experience with Linq to SQL and was hoping to get some good examples for something similar in the EF. Thank you.

A: 

The ADO.NET Entity Framework supports both Table-per-hierarchy and Table-per-type inheritance. I suggest you start here to see how it works.

Scott Whitlock
+1  A: 

Like this:

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();
    }
hminaya