代码之家  ›  专栏  ›  技术社区  ›  4imble

实体框架4中所有关于对象集的炒作是什么?

  •  2
  • 4imble  · 技术社区  · 16 年前

    我是.NET 3.5中EF的中间用户,最近开始使用.NET 4。

    在阅读各种教程时,我经常遇到的一件事是使用ObjectSets而不是ObjectQuerys,它们是一个很好的新特性。

    他们有什么了不起的?

    请启发我。

    亲切的问候, 科汉

    1 回复  |  直到 16 年前
        1
  •  4
  •   Stéphane    16 年前

    不确定这是否是您的问题中的意思,但ObjectSet真正酷的是它实现了一个接口 IObjuts-集 这意味着你可以很容易地伪造它 测试代码 直到数据访问层。

    更酷的是,因为对象集使用泛型类型( IObjectset<t> ,您可以拥有一个通用存储库并实现 工作单位 模式。

    public interface IRepository<T> where T : class
    {
         IQueryable<T> GetQuery();
         IEnumerable<T> GetAll();
         IEnumerable<T> Find(Func<T, bool> where);
         T Single(Func<T, bool> where);
         T First(Func<T, bool> where);
    
         void Delete(T entity);
         void Add(T entity);
         void Attach(T entity);
         void SaveChanges();
    }
    

    在这里完成文章:

    http://elegantcode.com/2009/12/15/entity-framework-ef4-generic-repository-and-unit-of-work-prototype/