我有一个名为 mainList 的列表。
mainList 中的每一项都包含另一个名为 detailList 的列表。
我想从 mainList 中选择项目,其中 detailList 中的属性评估为真。
我希望会起作用:
var list = mainList.Where(x => x.detailList.Where(y => y.property == true));
这不起作用,它无法将 detailList 转换为 bool。
所以我的问题是如何在 mainList 中选择项目,其中该项目在他的 detailList 中有一个有效的属性。
最佳答案
如果所有项目都必须为真:
var list = mainList.Where(x => x.detailList.All(y => y.property));
如果至少一个
var list = mainList.Where(x => x.detailList.Any(y => y.property));
关于C# Linq where list in list,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33450506/