使用Entity Framework保存不在Generic Repository模式中工作

时间:2017-08-29 22:11:59

标签: c# entity-framework generics repository-pattern

我创建了通用存储库,如下所示:

 public interface IGenericRepository<T> where T : class
    {    
        void Add(T entity);
        void Save();
        void AddMany(List<T> entities);
    }

其实施方式为:

public abstract class GenericRepository<C, T> :

         IGenericRepository<T> where T : class where C : DbContext, new()
        {

            private C _entities = new C();
            public C Context
            {

                get { return _entities; }
                set { _entities = value; }
            }
      public virtual void Add(T entity)
            {
                _entities.Set<T>().Add(entity);
            }

            public virtual void AddMany(List<T> entities)
            {
                _entities.Set<T>().AddRange(entities);
            }
      public virtual void Save()
            {
                _entities.SaveChanges();
            }
        }
    }

在课堂上使用它:

 public class EmployeeRepository :

    GenericRepository<EmployeeEntities, Employee>, IEmployeeRepository
    {        

        public void SaveEmployeesForItem(List<Employee> Employees)
        {
            AddMany(Employees);
            Save();
        }
    }

但是保存不起作用。 db中没有添加任何记录。并且它不会引发任何错误。任何人都可以建议我做错了什么?

(我花了几个小时调试这个。但没有运气。)

0 个答案:

没有答案