0
我试图围绕实体框架4中出现的所有类包围我的头。唯一一个让我困惑的(到目前为止)是EntitySet。从我的.edmx文件生成的C#代码中,只有XML文件(.csdl,.msl,.ssdl)中才会提及EntitySets。直接使用EntitySet?
ObjectSet似乎是EntitySet的一个包装(虽然它也暴露了EntitySet作为公共属性)。是否有任何情况下我将直接与EntitySets一起使用?
我试图围绕实体框架4中出现的所有类包围我的头。唯一一个让我困惑的(到目前为止)是EntitySet。从我的.edmx文件生成的C#代码中,只有XML文件(.csdl,.msl,.ssdl)中才会提及EntitySets。直接使用EntitySet?
ObjectSet似乎是EntitySet的一个包装(虽然它也暴露了EntitySet作为公共属性)。是否有任何情况下我将直接与EntitySets一起使用?
MSDN来自:
对于给定类型及其亚型的实体的逻辑容器。实体集映射到数据库中的表。
本质上,它是CSDL谈话 - 关于对象映射到哪个“集合”实体。
你不必担心它 - 你会ObjectSet<T>
合作:
var orders = ctx // ObjectContext
.Orders // ObjectSet<Order>
.SingleOrDefault(); // Order
对于奖金尖 - 如果可能的话,使用IObjectSet<T>
方便单元测试(实现一个模拟的一个 - 例如内存中的静态列表)。