Esto no es una pregunta tan complicada, pero no puedo entenderlo en linq.Union A Lista de listas usando Linq
que tienen un Enumerable<T>
que contiene un Enumerable<string>
:
public class
{
List<List<string>> ListOfLists = new List<List<string>>();
}
Básicamente quiero volver cada cadena única de ListOfLists; esto es fácil usando un bucle foreach y una variable de almacenamiento (que probablemente podría mejorar la eficiencia de no tener la distinta al final, pero ese no es el punto):
List<string> result = new List<string>();
foreach (var v in ListOfLists)
{
foreach (var s in v)
{
result.Add(s);
}
}
result.Distinct();
¿Cómo se hace esto con LINQ?
Ya tiene las respuestas. Yo sugeriría probar el método de extensión con este problema. Donde sus métodos de extensión seleccionan SelectMany and Distinct de forma optimizada. –