2009-08-23 80 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