从对象列表中删除属性“colName”的值与给定数组中的任何项匹配的所有对象“AllCols”

时间:2016-07-21 11:57:18

标签: c# linq

我正在尝试写一个linq查询,但是运气很多。我的技巧是linq是初学者水平。

从对象列表中删除所有对象,其中名为“colName”的属性值与名为“AllCols”的数组中的任何项匹配

2 个答案:

答案 0 :(得分:3)

listOfObjects.RemoveAll(o => AllCols.Contains(o.colName))

假设listOfObjects是列表<> (正如你所写)。如果它是IList<>你可以安全地投出它,如果你确定它拿着一个List<>实例

答案 1 :(得分:0)

你也可以喜欢这个

listOfobjects = listOfobjects.Where(i => !AllCols.Any(t => t == i)).ToList();