實體框架和Linq to Entities和.Include()幾個表,或者也許

entity-framework include linq-to-entities

我有一個名為PropertyValues的數據庫,其中我存儲了描述數據庫表行的某些屬性所需的每個值。

例如,表格產品如下所示:

ID
OrderID // Products表與Order表相關
產品名稱
ProductType_ID //描述產品類型(食品,香水,化學品)的PropertyValues表的ID
ProductCountry_ID // PropertyValues表的ID,鏈接到產品來自 ProductStatusID的 國家/ 也是PropertyValues表的ID,其中包含產品狀態(可用,不可用)

有了這樣的數據庫模型,為了獲得訂單及其所有類型,國家和地位的產品,我將不得不寫下這樣的東西:

var orders = from o in dbEntities.Order.Include("Products.ProductType")
                                       .Include("Products.ProductCountry")
                                       .Include("Products.ProductStatus")
            select o;

問題是:)
它可以自動完成(因此將包括所有相關實體)
或者可能有更好的方法?

謝謝 !

一般承認的答案

我認為你正在尋找的是“延遲加載”或“渴望加載”,正如亞歷克斯詹姆斯指出的那樣。

此博客文章解釋說,“延遲加載”將在實體框架的4.0版中實現。

http://blogs.msdn.com/adonet/archive/2009/05/12/sneak-preview-deferred-loading-in-entity-framework-4-0.aspx

它可以自動完成,谷歌“實體框架延遲加載”來進行設置。



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因