我试图检查我的集合中的所有项目是否都有特定的属性值,假设我有一个名为IsFavourite
的属性,我需要检查每个属性是否为真元件。我试过这个:
var c = listView.Items.Cast<Event>().Where(x => x.MatchNation == nation
&& x.MatchLeague == league && x.IsFavourite == true).Any();
但这只会返回一个具有此属性的项目。
答案 0 :(得分:5)
您必须使用All()
bool result = listView.Items.Cast<Event>()
.Where(x => x.MatchNation == nation && x.MatchLeague == league)
.All(x => x.IsFavourite);
答案 1 :(得分:2)
您也可以使用Any()
,但检查是否有任何项目不是IsFavourite(IsFavourite==false
)。
var z = listView.Items.OfType<Event>().Where(x => x.MatchNation == nation
&& x.MatchLeague == league).Any(x => x.IsFavourite==false);
答案 2 :(得分:1)
您需要使用All
var c = listView.Items.OfType<Event>().Where(x => x.MatchNation == nation
&& x.MatchLeague == league).All(x => x.IsFavourite);