【发布时间】:2021-12-10 17:13:34
【问题描述】:
我有一个对象列表。
这些对象在其他元素中包含一个称为“reference”的字符串。该列表可能如下所示:
|reference| description |
|123 | this should |
|124 | sth |
|125 | sth |
|123 | be one |
我想在此列表中合并具有相同引用的所有元素。 结果应该是:
|reference| description |
|123 | this should be one|
|124 | sth |
|125 | sth |
进入一个新列表。到目前为止,我只能找到有关如何分组或如何组合两个列表的解决方案。 有什么想法吗?
【问题讨论】:
-
您的设置代码在哪里,以便他人轻松创建解决方案并测试结果并向您展示一个最小的工作示例?
-
使用
.GroupBy将匹配的元素归为一组,然后聚合成一个新项目,可以这样做:items.GroupBy(kvp => kvp.reference).Select(g => new Item(g.Key, string.Join(" ", g.Select(e => e.description)))) -
我确实尝试了几天但没有运气。在这个问题中,我没有发布代码,因为它要复杂得多,我想专注于这个问题。我认为这样其他人可能会获利更多。