尝试在NHibernate QueryOver中实现以下查询。动态添加投影到NHibernate查询
SQL
SELECT
SUM(GrossChargeAmount)
FROM Charges
INNER JOIN Account on Account.Chargekey = Charges.Chargekey
SELECT
SUM(GrossChargeAmount),
Account.AccountHolder
FROM Charges
INNER JOIN Account on Account.Chargekey = Charges.Chargekey
GROUP BY
Account.AccountHolder
NHibernate的:
var accountAlias = null;
var baseQuery = session.QueryOver<Charges>()
.JoinAlias(c => c.Account,() => accountAlias)
.SelectList(s => s.SelectSum(c => c.GrossChargeAmount))
我有一个构建baseQuery代码。我然后根据方法的参数将要追加GROUP BY到像baseQuery:
baseQuery.SelectList(s => s.GroupBy(() => accountAlias.AccountHolder)
然而,这结束了复位我baseQuery预测,基本上“overwritting”的初步预测(.SelectList(S => s.SelectSum(c => c.GrossChargeAmount)))。在这个阶段,查询的执行不会有任何SUM()bu只是GROUP BY。
TLDR;如何将投影添加到Nhibernate QueryOver实例?
最后,但并非最不重要,我NHibernate的运行2.0.50727
有没有例如NHibernate 2.0.50727 –