我有一个平面表(抱歉,但这是数据的来源)并且我正在尝试编写基于方法的linq查询以返回用户列表的总步数。应该很简单,但我找到并尝试过的例子都不起作用。这是班级:
public class WellnessLog
{
public int Id { get; set; }
public string UserName { get; set; }
public int Steps { get; set; }
public datetime EnteredOn { get; set; }
public datetime StartedOn { get; set; }
public datetime EndOn { get; set; }
}
答案 0 :(得分:0)
找不到任何例子?真的?
这应该有用。通常,group by在多个表上,但由于它只是一个,所以更容易:
var query = db.WellnessLogs
.GroupBy(x => x.Username)
.Select (x => new { Username = x.Username, Steps = x.Steps.Count() });
相当于以下T-SQL:
SELECT Username, Count(Steps)
FROM dbo.WellnessLogs
GROUP BY Username