我正在尝试以下代码,但 nhibernate 抛出以下异常:
此 SelectClauseVisitor 不支持表达式类型“NhSumExpression”。
var data =
(
from a in session.Query<Activity>()
where a.Date.Date >= dateFrom.Date && a.Date.Date <= dateTo.Date
group a by new { Date = a.Date.Date, UserId = a.RegisteredUser.ExternalId } into grp
select new ActivityData()
{
UserID = grp.Key.UserId,
Date = grp.Key.Date,
Bet = grp.Sum(a => a.Amount < 0 ? (a.Amount * -1) : 0),
Won = grp.Sum(a => a.Amount > 0 ? (a.Amount) : 0)
}
).ToArray();
我一直在环顾四周,找到了这个答案
但是我不确定应该使用什么来代替该示例中使用的 Projections.Constant,以及如何创建由多个字段组成的 group by 子句。