当前位置:  开发笔记 > 编程语言 > 正文

如何连接两个IEnumerable并将它们投影到一个分组中

如何解决《如何连接两个IEnumerable并将它们投影到一个分组中》经验,为你挑选了1个好方法。



1> Red..:

您可以执行Concat/Union,然后按日期分组.代码看起来大致如下:

var list3 = List1.Concat(List2)
                             .GroupBy(x => x.Date)  
                             .Select(grouping => 
                                 new StatusGroup
                                 {
                                     Date = grouping.Key, 
                                     SuccessCount = grouping.Sum(x => x.SuccessCount), 
                                     FailCount = grouping.Sum(x => x.FailCount)
                                 });


不要使用`Union`.`Union`删除重复项,这会给你错误的总和.使用`Concat`.
@Rob取决于课堂.如果它覆盖了`Equals`和`GetHashcode`.
@Rob使用`Union`时的意图仍然是删除重复项,无论它是否实际执行.因此,如果意图是保持重复,则不应使用"union".
推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有