C# 如何获取对象集<;T>;使用EF代码第一个CTP5(用于通用存储库?)
对于代码优先的CTP 3和4,我通过在C# 如何获取对象集<;T>;使用EF代码第一个CTP5(用于通用存储库?),c#,entity-framework-4,repository-pattern,code-first,C#,Entity Framework 4,Repository Pattern,Code First,对于代码优先的CTP 3和4,我通过在DbContext中实现一个方法实现了一个通用存储库模式,该方法返回this.ObjectContext.CreateObjectSet。这使我能够为所需的任何类型创建一个对象集,然后使用Linq对其进行编码 昨晚我升级到了CTP5,看起来他们已经改变了很多DbContext的实现方式。一个方面是DbContext类中不再有ObjectContext属性。据我所知,没有任何方法可以创建一个ObjectSet或任何其他数据集,我可以使用这些数据集来按需访问与数
DbContext
中实现一个方法实现了一个通用存储库模式,该方法返回this.ObjectContext.CreateObjectSet。这使我能够为所需的任何类型创建一个对象集,然后使用Linq对其进行编码
昨晚我升级到了CTP5,看起来他们已经改变了很多DbContext
的实现方式。一个方面是DbContext
类中不再有ObjectContext
属性。据我所知,没有任何方法可以创建一个ObjectSet
或任何其他数据集,我可以使用这些数据集来按需访问与数据上下文相关的数据
然后我想在方法中创建一个DbSet
,因为这样可以对它执行linq到实体的操作。但是,这也不起作用,因为没有用于DbSet
的构造函数(或者编译器告诉我的那样),而且我也没有办法将其绑定到数据上下文的现有实例
有人知道如何使用代码优先的CTP5实现通用存储库吗?我让我的存储库返回
IQueryable
。ObjectSet
和DbSet
都实现了该接口。要先使用code获得DbSet
,请从已创建的上下文类中提取属性,或者上下文类使用的基类具有名为Set()
的方法,该方法将返回DbSet
啊哈,我错过了Set()
方法。谢谢