如何使用Linq查找列表中不存在于另一个列表中的元素?

时间:2011-06-20 21:05:45

标签: c# linq list ienumerable subset

我有2 ListString个变量:

List<string> stringList1
List<string> stringList2 

其中stringList2stringList1

的子集

现在我希望stringList1上的所有元素都不在stringList2

如何使用Linq实现此目的?

2 个答案:

答案 0 :(得分:14)

您想在Except

上使用IEnumerable<T>扩展方法
var results = stringList1.Except(stringList2);

答案 1 :(得分:2)

使用此LINQ表达式:

from string x in stringList1 where !stringList2.Contains(x) select x;

我确定有一个内置方法,但这就是LINQ。 (我现在没有VC#和我一起......)