如何为这种情况编写linq查询?

问题描述:

假设我有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(.....

我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 {....}; 

我希望这有助于