如何检查Linq to SQL实体是否有孙子?

时间:2010-06-17 13:33:48

标签: linq-to-sql

如何判断Linq to SQL实体是否有孙子?

下面的伪代码:

Return From p In dc.Processes Where p.Signers.Count > 0 and p.Signers.Signatures.Count > 0

显然我无法运行上面的代码,但我需要确保所有返回的进程至少有一个签​​名者,并且所有签名者都至少有一个签​​名。

TIA!

3 个答案:

答案 0 :(得分:3)

这样的事情应该有效。

... VB.Net ......

Return From p In dc.Processes _
       Where p.Signers.Any(Function(s) s.Signatures.Any()) _
       Select p

... C#...

return  from p in dc.Processes
        where p.Signers.Any(s=>s.Signatures.Any())
        select p;

答案 1 :(得分:2)

如果您的表有多对多关系,则可能需要进行子选择。这样的事情应该在这个例子中起作用

Return (From p In dc.Processes Where p.Signers.Count > 0 And (from t in p.Signers where t.signatures.count) > 0)

答案 2 :(得分:2)

以下代码是C#,但它可以解决问题:

 from p in db.Processes
 where p.Signers.Any(s => s.Signatures.Any())
 select p