[英]How to perform a many-to-many Linq query with Include in the EF
我不知道如何使用Linq和EF執行此查詢。
想象一下,我有三個表A,B和C。
A和B具有多對多關系。 B和C具有一對多關系。
我想從B獲取記錄,包括C,但從A的ID過濾。 我可以輕松地從B獲得記錄:
var result = Context.A.Where(x => x.Id.Equals(aId)).SelectMany(x => x.B);
但是當我嘗試加入CI時,卻不知道該怎么做:
//This doesn't work
var result = Context.A.Where(x => x.Id.Equals(aId)).SelectMany(x => x.B.Include("C"));
我也沒有運氣嘗試過它(相當於上面):
//Not working
var result = (from a in Context.A.Where(x => x.Id.Equals(aId))
from b in a.B.Include("C")
select b);
謝謝你的幫助。
好的,我找到了Any擴展方法...
這是解決方案:
var result = (from b in Context.B.Include("C")
where b.A.Any(x => x.A.Equals(aId))
select b);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.