我是實體框架的新手。我正在使用代碼第一選項。下面我有一個基本的模型。數據庫已正確創建並且記錄保持正確,但是當我運行測試方法(在模型後定義)時,我的標題記錄第二次加載正常,但是我的導航屬性Details並未重新加載。我究竟做錯了什麼?實體框架導航不加載的屬性
回答
這裏實體框架使用Lazy-Loading
。爲了獲得詳細信息,您應該使用Eager-Loading
。您應該使用Include
方法中的System.Data.Entity
命名空間來完成Eager-Loading
。更改您的查詢,如下所示。
var hdr = (
from header in ctx.Headers
where header.Name == NAME
select header).Include(h=>h.Details).FirstOrDefault();
在我真實的情況下,我想使用延遲加載。我參考它時不應該加載詳細記錄嗎? – Jesse
延遲加載只會加載您要求的內容。你要求標題,並且你得到了標題,如果你還想要明確要求明細的細節(使用包含)。 – master2080
如果從未加載,則延遲加載的意義何在? – Jesse
- 1. 實體框架不加載導航屬性
- 2. 實體框架一對一導航屬性不加載
- 3. 禁用延遲加載的實體框架導航屬性
- 4. 實體框架6意外的自動加載導航屬性
- 5. 實體框架 - 附加實體 - 附加導航屬性?
- 6. 實體框架4.0自我跟蹤加載導航屬性
- 7. 實體框架核心導航屬性過度加載
- 8. 貪婪加載實體框架導航屬性錯誤
- 9. 實體框架導航屬性爲null
- 10. 實體框架 - 創建導航屬性
- 11. 實體框架集導航屬性
- 12. 實體框架:排除導航屬性
- 13. 實體框架:通過導航屬性
- 14. 實體框架導航屬性更新
- 15. 實體框架導航屬性
- 16. 實體框架虛擬導航屬性
- 17. 實體框架 - 多導航屬性
- 18. 在實體implemening導航屬性框架
- 19. 實體框架導航屬性
- 20. WPF和實體框架導航屬性
- 21. 實體框架 - 導航屬性問題
- 22. 實體框架導航屬性null
- 23. 訂購導航屬性 - 實體框架
- 24. 實體框架檢索導航屬性
- 25. 實體框架5不加載屬性
- 26. 更新實體不更新導航屬性 - 實體框架
- 27. 實體的導航屬性未加載
- 28. 實體框架上的負載導航屬性
- 29. 實體框架.Include()導航另一個導航屬性
- 30. 實體框架增加了新的記錄導航屬性
是** DetailId **主鍵嗎?如果是,是身份? –
是的,通過代碼第一個約定,它自動被定義爲一個身份的PK。 – Jesse