Frage

Sorry für die seltsame Beschriftung. Was ich versuche ist einfach zu erreichen:

IEnumerable<IEnumerable<Foo>> listoflist;
IEnumerable<Foo> combined = listoflist.CombineStuff();

Beispiel:

{{0, 1}, {2, 3}} => {0, 1, 2, 3}

Ich bin sicher, es gibt einen Linq Ausdruck für diese ...

Nebenbei bemerkt: Die Listen können groß sein

.
War es hilfreich?

Lösung

Wie leppie sagt, möchten Sie Enumerable.SelectMany . Die einfachste Form wäre:

 combined = listOfList.SelectMany(x => x);

Bei der Abfrage Ausdrücke, SelectMany wird aufgerufen, wenn Sie mehr als eine from Klausel, also eine Alternative wäre:

 combined = from x in listOfList
            from y in x
            select y;

Andere Tipps

  

Select ()

OK

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top