假设我有一张桌子叫
我可以通过两个查询来实现:
int total = m.Items.Sum(p=>p.Total)
int done = m.Items.Sum(p=>p.Done)
但我想在一个查询中这样做:
var x = from p in m.Items select new { Sum(p.Total), Sum(p.Done)};
肯定有一种方法可以从LINQ语法调用聚合函数...?
假设我有一张桌子叫
我可以通过两个查询来实现:
int total = m.Items.Sum(p=>p.Total)
int done = m.Items.Sum(p=>p.Done)
但我想在一个查询中这样做:
var x = from p in m.Items select new { Sum(p.Total), Sum(p.Done)};
肯定有一种方法可以从LINQ语法调用聚合函数...?
这将会起到作用:
from p in m.Items
group p by 1 into g
select new
{
SumTotal = g.Sum(x => x.Total),
SumDone = g.Sum(x => x.Done)
};