簡體   English   中英

實體框架包含,無需查詢

[英]Entity Framework Include without query

是否可以在不查詢的情況下包括相關對象?

帶查詢:

Item item = _db.Items
               .Include(i=>i.Supplier)
               .Where(....)

無需查詢:

var item = new Item { Name = "Test", SupplierId = 1 };
item.Include(i => i.Supplier); //something like that...

我不太明白你的問題...

首先在哪里返回多個對象

IQueryable<Item> items = _db.Items
               .Include(i=>i.Supplier)
               .Where(....)

然后結果是一個IQueryable ,暫時未實現物料和供應商對象。 例如,您必須使用ToList()啟用實現並查詢數據庫。

對於包括方法,它只是一個加盟查詢項目和供應商的關系。 但是Include擴展方法僅在IQueryable中可用,不適用於實體。

供應商通常是項目實體的簡單導航屬性

class Item
{
public virtual Supplier Supplier {get; set;}
}

這樣您就可以使用

var item = new Item { Name = "Test", SupplierId = 1 };
item.Supplier = ....

如果您想與您建立關系,則必須獲得供應商

item.Supplier = _db.Suppliers.First(s => s.SupplierId = 1);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM