2009-08-23 82 views
6

如何使用Linq在2个通用类型字符串列表之间找到通用项目。Linq List <string> union

例如,说我有下面的代码,我想获得一个列表<字符串>这将包含ITEM2和项目3:

List<string> List1 = new List<string>(); 
List<string> List2 = new List<string>(); 

List1.Add("item1"); 
List1.Add("item2"); 
List1.Add("item3"); 

List2.Add("item2"); 
List2.Add("item3"); 
List2.Add("item4"); 

回答

0
from item in list1 
where list2.Contains(item) 
select item 

将适用于valuetypes。

5

我知道LINQ被标记,但只是为了完整;如果LINQ不是一个选项;

List<string> result = list1.FindAll(list2.Contains); 
1

如何:

var List3 = list1.Intersect(list2) 
+2

看来你的答案的大部分相交我的回答。 – Kobi 2009-08-23 10:08:36