/ Konwersja krotki do Tuple - c #, .net

Konwersja krotki do Tuple - c #, .net

Czy istnieje łatwy sposób na konwersję? Tuple<int, string, Guid> do Tuple<int, string>?

AKTUALIZACJA: ... przekonwertować na List<Tuple<int, string, Guid>> do List<Tuple<int, string>> ?

Odpowiedzi:

7 dla odpowiedzi № 1

pewnie:

Tuple<int, string, Guid> t1 = ...;
Tuple<int, string> t2 = new Tuple<int, string>(t1.Item1, t1.Item2);

Aktualizacja:
Z listą:

List<Tuple<int, string, Guid>> t1s = ...;
List<Tuple<int, string>> t2s = t1s.Select(t1 => new Tuple<int, string>(t1.Item1, t1.Item2)).ToList();

4 dla odpowiedzi nr 2

Zaktualizowane pytanie ...

var result = tuples.Select(t => Tuple.Create(t.Item1, t.Item2)).ToList();

... powinienem załatwić sprawę.

To bierze oryginalną listę tuples i projektuje każdą 3-krotną t do pożądanej 2-krotnej; rezultatem tego jest IEnumerable<Tuple<int, string>> co może być wystarczające, jeśli możesz pracować z leniwą sekwencją, ale jak wskazałeś, że chcesz listy, to jest to możliwe poprzez dołączenie .ToList() połączenie.


1 dla odpowiedzi nr 3
var myNewList = myList.Select(t => new Tuple<int, string>(t.Item1, t.Item2)).ToList();