繁体   English   中英

Linq 分组和 select 总和

[英]Linq group by and select sum

我目前有 2 个列表,一个是记录,一个是卡片。 我试图在共享 GUID 上加入这两个列表,然后按卡片名称分组以查找具有该名称的卡片总数。 我只是不确定如何让这个 group by statement 起作用,有人有什么想法吗?

            var values = (from r in records
                      join c in cards
                      on r.CardGUID equals c.GUID
                      orderby c.Name ascending
                      select new
                      {
                          Name = c.Name,
                          Quantity = r.Quantity
                      })
                      .GroupBy(e => new { e.Name });

如果您想计算每个组内的数量总和,您可以在 groupBy 之后添加如下内容:

.Select(group => new {group.Key, group.Sum(g => g.Quantity)});

即为每个组创建一个新的 object,其中包含该组的密钥/名称和数量总和。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM