按名称从元组列表中分组或提取元素c#

按名称从元组列表中分组或提取元素c#,c#,linq,list,C#,Linq,List,我正在编写一个litle c#应用程序,它从一个源中提取信息并将其打印到txt文件中。但我在订购信息时遇到了一点问题。 我有这样一个元组列表: List<Tuple<string,string,string>> (SomeName1, SomeID1, Description1) (SomeName2, SomeID2, Description1) (SomeName3, SomeID3, Description1) (SomeName4, SomeID4, Descr

我正在编写一个litle c#应用程序,它从一个源中提取信息并将其打印到txt文件中。但我在订购信息时遇到了一点问题。 我有这样一个元组列表:

List<Tuple<string,string,string>>
(SomeName1, SomeID1, Description1)
(SomeName2, SomeID2, Description1)
(SomeName3, SomeID3, Description1)
(SomeName4, SomeID4, Description1)
(SomeName5, SomeID5, Description1)
(SomeName6, SomeID6, Description2)
(SomeName7, SomeID7, Description2)
(SomeName8, SomeID8, Description2)
(SomeName9, SomeID9, Description2)
等等。 因此,正如我们所见,名称和ID始终是唯一的。而对几个元素的描述是相同的。我想要的是将列表分组,或者根据其描述将列表中的元素提取到其他几个列表中。例如,我从上面的列表中得到两个listst。其中,列表1将包含以下内容:

(SomeName1, SomeID1, Description1)
(SomeName2, SomeID2, Description1)
(SomeName3, SomeID3, Description1)
(SomeName4, SomeID4, Description1)
(SomeName5, SomeID5, Description1)
而清单二将包含以下内容:

(SomeName6, SomeID6, Description2)
(SomeName7, SomeID7, Description2)
(SomeName8, SomeID8, Description2)
(SomeName9, SomeID9, Description2)
我怎么能得到这个?假设我不知道描述是什么,也不知道它们有多少不同的描述。最佳的解决方案是,如果我能让list1首先在索引0处显示描述,然后在下面的索引处显示名称、id和描述。但我可以设法找到我自己,我想。我无法工作的事情是根据描述对大列表进行分组/拆分
我会感激所有能得到的帮助。提前谢谢

谢谢你,这正是我要找的!:)
var result = input.GroupBy(t=>t.Item3, (key,items)=>items.ToList()).ToList();
// 
//list1 = result[0];
//list2 = result[1]; ...