2011-02-08 60 views
1

假設我有3個表:如何爲這種情況編寫linq查詢?

塔巴(ID1,......,ID2,...)

塔布(ID2,...)

TABC(ID3,... 。,id2,...)

現在我想要查找TabC中的所有記錄,這些記錄應該能夠通過它的id1從TabA中識別出來。如果使用SQL,查詢將

選擇C * 從TABCÇ

加入塔布B關於c.id2 = b.id2

上a.id2 = b.id2加入一個塔巴

凡ID1 = inputID

如何寫這個LINQ一樣,當我用EF和WCF RIA服務爲SL應用程序?

this.ObjectContext.TabC.Where(.....

回答

0

我normaly做這種方式(我覺得更容易閱讀):

var q = 
from c in ctx.TabC 
from b in ctx.TabB.Where(b=> b.id2 == c.id2) 
from a in ctx.TabA.Where(a=> a.id2 == b.id2) 
where a.id1 == inputID 
select new {....}; 

我希望這有助於