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>
方便單元測試(實現一個模擬的一個 - 例如內存中的靜態列表)。