实体框架| GroupBy和Sum

时间:2018-06-01 16:11:31

标签: linq entity-framework-6

我有一个只有3列git tag -m "a comment" myTag的简单表格,我需要通过{ id, DateTime, NumberOfCoils }将查询结果与DateTime的总和相加日期。

NumberOfCoils

我在这里寻找解决方案,但我无法弄清楚如何解决它。我认为让我难以找到解决方案的一部分原因是我必须做一些格式化。

我很擅长使用EF,所以如果这是一个糟糕的问题我会道歉。

2 个答案:

答案 0 :(得分:0)

试试这个:

return testData.MOCK_DATA.Select(x => new { x.NumberOfCoils, x.DateTime })
            .AsEnumerable()
            .Where(x => x.DateTime> DateTime.Now.AddDays(-numberOfDays))
            .GroupBy(x => x.DateTime)
            .Sum(x => x.NumberOfCoils);

答案 1 :(得分:0)

您需要实际使用GroupBy

return testData.MOCK_DATA.Where(x => x.DateTime > DateTime.Now.AddDays(-numberOfDays))
                         .GroupBy(d => d.DateTime)
                         .Select(dg => new { formattedDate = dg.Key.ToString("yyyy-MM-dd"), NumberOfCoils = dg.Sum(d => d.NumberOfCoils) })
                         .OrderBy(x => x.formattedDate)
                         .ToList();