【发布时间】:2010-02-22 01:54:49
【问题描述】:
我想将两个 LINQ 语句合二为一,但在我的一生中我无法让它发挥作用。
我无法让分组在第一个语句中起作用。
它抱怨TotalBuy 和TotalSell 属性不存在,但没有抱怨AmountTC 和AmountAUD。
这应该很简单。有什么想法吗?
var itineraryItems =
from ii in this.ItineraryItemRecords
join t in this.TransactionRecords on ii.OperatorID equals t.
TransactionActor.OperatorID into g select new {
OperatorID = ii.OperatorID, TotalBuy = g.Sum(i = >ii.TotalBuy)
, TotalSell = g.Sum(i = >ii.TotalSell)
, PaidTC = (0 - (g.Sum(t = >t.AmountTC)))
, PaidAUD = (0 - (g.Sum(t = >t.AmountAUD)))
};
var itineraryItemz =
from i in itineraryItems group i by i.OperatorID into g select new {
OperatorID = g.Key, TotalBuy = g.Sum(i = >i.TotalBuy)
, TotalSell = g.Sum(i = >i.TotalSell)
, PaidTC = (0 - (g.Sum(i = >i.PaidTC)))
, PaidAUD = (0 - (g.Sum(i = >i.PaidAUD)))
};
附带说明,ItineraryItemRecords 和 TransactionRecords 是由 SubSonic 处理的类的集合。
这真的应该很简单,所以任何帮助将不胜感激。
问候, 约翰
【问题讨论】:
-
@JohnBob - 我用 c# 标签重新标记了你的问题,以便它可能会得到更多的注意,因为还没有人回应。
标签: c# linq group-by sum aggregate