Wie erstelle ich eine einzelne Liste von Objekt-Paaren aus zwei Listen in C#?
Habe ich zwei Listen von Objekten. Liste A und Liste B. I müssen erstellen Sie eine Liste mit C verbindet, welche Liste A und Liste B in Paaren. Zum Beispiel:
List A
object a1
object a2
object a3
List B
object b1
object b2
object b3
List C (creates pairs)
object c1 (object a1, object b1)
object c2 (object a2, object b2)
object c3 (object a3, object b3)
- finden Sie diese stackoverflow.com/questions/166089/...
InformationsquelleAutor Earl | 2011-08-18
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser es tun würde:
Edit: ich weitaus lieber Paul ' s Antwort.
Tuple
ist erst ab 4.0.Könnten Sie die Enumerable.Zip() - Methode im System.Linq -.
Beispiel für die Verwendung dieser resultierenden enumerable:
Schande, es nicht zu einer überlast, die automatisiert die tupleation in .NET. Eine solche Erweiterung würde dann so Aussehen:
Was bedeuten würde, Sie könnten dann schreiben Sie code, der wie folgt aussieht:
Hinweis: eine Andere Möglichkeit wäre das erstellen anonymer Typen statt
Tuple
aber der Nachteil dieses Ansatzes ist, dass Sie nicht in der Lage wäre (sinnvoll) übergeben, die daraus resultierenden IEnumerable aus der Methode, die erstellt wird, in der aufgrund der Art nicht mit einem Namen.Enumerator
s manuell und iterativ, als pro Jonathan Dickinson ' s Antwort.listA.Zip(listB, (a, b) => Tuple.Create);
Etwas wie dieses:
Ausgabe:
1,ein
2,b
3,c
Ich würde vorschlagen, mit einer Liste von tupples
http://msdn.microsoft.com/en-us/library/system.tuple.aspx.