Перехід Tuple Tuple - c #, .net

Є будь-який простий спосіб перетворити Tuple<int, string, Guid> до Tuple<int, string>?

UPDATE: ... перетворити List<Tuple<int, string, Guid>> до List<Tuple<int, string>> ?

Відповіді:

7 для відповіді № 1

впевнений:

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

Оновлення:
З переліком:

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

4 для відповіді № 2

За оновлене запитання ...

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

... повинен зробити трюк.

Це бере початковий список tuples і проектує кожен 3-х тулуп t в потрібний 2-кратний; результат цього є IEnumerable<Tuple<int, string>> що може бути достатнім, якщо ви можете працювати з леною послідовністю, але, як ви вказали, що ви хочете список, це можливо, додавши .ToList() дзвонити


1 для відповіді № 3
var myNewList = myList.Select(t => new Tuple<int, string>(t.Item1, t.Item2)).ToList();