我有以下方法自動地從支架模板與儲存庫生成的相同查詢中使用.Find()&.INCLUDE(): -上
public Group Find(int id)
{
return context.Groups.Find(id);
}
但由於組對象具有兩個導航屬性我所需要的,所以我想包括.Include
,所以我.where
更換.find
: -
public Group Find(int id)
{
return context.Groups.Where(c=>c.GroupID==id)
.Include(a => a.UserGroups)
.Include(a2 => a2.SecurityRoles)
.SingleOrDefault();
}
但我的問題是如何應用.Include
與.find()
而不是使用的?
您可以通過將過濾器傳遞給單個調用並刪除where子句(例如'.SingleOrDefault(c => c.GroupID == id)' –
)來簡化甚至更多.Where和.Find之間有什麼區別? ? –
在這裏查看where和find之間的區別,http://msdn.microsoft.com/en-us/data/jj573936.aspx,基本上只找到按鍵搜索,並有一個微妙的優化,如果您以前查詢過該實體。這是優化實際上是你不能使用包括 –