按名称将分组列表中的元素分组或提取

dtd

我正在编写一个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]; ...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章