[英]Selecting multiple relationships in Entity Framework
我有表BaseTable
,其中具有列表Categories
( Category
表)。 Categories
具有Definitions
列表( Definition
表), Definitions
具有Values
列表( Value
表),並且Definitions
表也具有Commands
列表( Commands
表)。
下面是表結構:
BaseTable: Categories -> Definitions -> Values -> Comments
BaseTable: Categories -> Definitions -> Commands
所以我想從BaseTable
檢索一行以及相關的表。
這是我用來從表中檢索數據的代碼片段:
BaseTable base = base.dbcontext.BaseTables
.Include(b1 => b1.Categories.Select(c => c.Definitions
.Select(v => v.Values
.Select(com => com.Comments))))
.Include(b2=>b2.Categories.Select(k=>k.Definitions
.Select(f=>f.Commands)))
.Where(b3 => b3.Id == id).SingleOrDefault();
使用上面的查詢,我能夠檢索BaseTable
的所有相關表。 但是在我的數據庫中,“ Values
和“ Commands
表中有很多條目,因此此查詢要花費大量時間來檢索所有數據。
任何人都可以幫助我編寫正確的查詢來檢索上述情況嗎?
您可以通過在模型的屬性中添加'virtual'關鍵字來嘗試延遲加載。 在許多情況下,它將提高應用程序的性能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.