如何在LINQ中使用sum与group?

loading...


1

我有以下很多公司 . 有些公司有主题,有些则没有 . 像这样的东西:

CompanyID  Subjects
1          2
2          4
3          1
4          0

我正在尝试创建一个LINQ报告,它将为我提供这些信息 . 这就是我到目前为止所拥有的 . 它正确地进行外连接,以便即使没有主题的公司也包括在列表中 . 获得该数据后,我按公司名称对日期进行分组 . 问题是最后一个选择无法正常工作 . 有人可以建议我如何得到这笔钱 . 我能够使用count()但是我需要一个总和,因为我设置的方式是当没有主题时,值为0进入主题,而有1值则为1 . 因此,通过总结组中每个休息时间的主题数量,我应该能够找出分配给公司的主题数量 .

var test1 = from c in companies
            join s in subjects
              on "0000" + c.RowKey equals s.PartitionKey into outer
            from s in outer.DefaultIfEmpty()
            select new 
            {
                Title = c.Title,
                Subjects = ((s == null) ? 0 : 1)
            } into split
            group split by split.Title into g
            select new
            {
                Title = g.Key,
                total = g.sum(s => s.Subjects)
            };
1回答

  • 0

    你写了没有首都“s”的“sum”方法 . C#区分大小写,所以我认为这是你的问题,如果你遇到编译错误 .

    否则包括您的查询的实际结果和您期望的结果,因此我们可以比较它并尝试找到问题 .

loading...

评论

暂时没有评论!