加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用LINQ -Concat重复记录

发布时间:2020-12-16 01:51:32 所属栏目:百科 来源:网络整理
导读:问题:我有一个包含大量数据的列表,我不知道如何将重复数据合并到一个单元中,它不应该影响其他单元.如果可能的话,希望每个都发生在同一个列表中而不创建更多列表来实现结果使用LINQ CaseID ApproverID1 231 451 562 332 903 583 79 从更广泛的意义上讲,我想
问题:我有一个包含大量数据的列表,我不知道如何将重复数据合并到一个单元中,它不应该影响其他单元.如果可能的话,希望每个都发生在同一个列表中而不创建更多列表来实现结果使用LINQ

CaseID  ApproverID
1   23
1   45
1   56
2   33
2   90
3   58
3   79

从更广泛的意义上讲,我想要类似caseID 1和approverID AS 23,45,56

解决方法

如果要对记录进行分组,则可以执行此操作

var result = source.GroupBy(x => x.CaseID,x => x.ApproverID);

第一个lambda表达式选择组密钥.第二个lambda表达式选择值.如果省略第二个表达式,将返回源值.你可以使用这样的结果:

foreach (var group in result) {
    Console.WriteLine(group.Key);
    foreach (int value in group) {
        Console.WriteLine("    " + value);
    }
}

结果将是

1
    23
    45
    56
2
    33
    90
3
    58
    79

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读