2009-08-23 16 views
6

¿Cómo puedo utilizar Linq para encontrar elementos comunes entre 2 listas genéricas de tipo cadena.Lista de Linq <string> unión

Por ejemplo, decir que tengo el siguiente código, me gustaría obtener una cadena Lista <> que contendría elemento2 y elemento3:

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"); 

Respuesta

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

funcionarán para los tipos de valores.

5

Sé que LINQ fue etiquetado, pero solo por completitud; si LINQ no es una opción;

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

¿Qué tal:

var List3 = list1.Intersect(list2) 
+2

Parece una gran parte de su respuesta se cruzan con mi respuesta. – Kobi

Cuestiones relacionadas