我很难将简单的T-SQL语句转换为LINQ语句。
select UserName,SUM(Value) FROM UserValues Group By username
到目前为止,我已经在C#中了:
var TcountValues = _context.UserValues.GroupBy(g=>g.UserName);
我不确定如果我想在此之后使用select来获取我的用户名和聚合函数。在这一点上,我甚至不确定我是否应该在LINQ中使用group by方法。
任何帮助将不胜感激。
答案 0 :(得分:2)
var TcountValues = _context.UserValues
.GroupBy(g=>g.UserName)
.Select(x=> new
{
UserName = x.Key,
Sum = x.Sum(y=>y.Value)
});
最好为TcountValues
创建一个类,否则您将拥有一组匿名类型,并且您无法以外部强类型方式访问此对象的属性当前范围(本例中的方法)