2010-06-24 79 views
4

我有一个List<MyList>的对象。LINQ查找列表中的空对象

MyList也有几个列表和一个可能被称为List<Defect>

List<Defect>可能包含多个缺陷中的一个或多个可能为空。

如何返回MyList.Defects包含空对象的MyList项的计数?

我知道我可以做一个foreach并检查每个项目,但有没有LINQ的方式来做到这一点?

回答

4

如何返回MyList.Defects包含空对象的MyList项的计数?

return myLists.Count(ml => ml.Defects.Contains(null)); 
4
return myLists.Count(ml => ml.Defects.Any(d => d==null)); 
+0

+1虽然我觉得这个解决方案可能是更容易阅读,我喜欢@ mquander的解决方案,其简洁好一点。谢谢任何方式@Joel。 – griegs 2010-06-24 04:20:48