如何检查列表中的所有元素是否对使用Linq的属性返回true?

时间:2010-06-30 23:55:28

标签: c# linq

我想要一个调用属性IsValid的LINQ语句 如果所有元素都返回true,我希望语句也返回true 怎么办呢?

3 个答案:

答案 0 :(得分:14)

var allValid = myList.All(item => item.IsValid);

答案 1 :(得分:6)

你可能想要保护或具体。 Enumerable.All如果集合为空则返回true

var allValid = myList.Any() && myList.All(item => item.IsValid);

请参阅此处Why does Enumerable.All return true for an empty sequence?

答案 2 :(得分:5)

您需要Enumerable.All<TSource> method

bool everythingsZen = anEnumerable.All(a => a.IsValid);