条件付き予測クエリを使用して、現金とクレジットカードの合計を別々に計算する必要があるという要件があります。以下のコードは機能せず、データ型の不一致エラーが発生します。これは、真の条件が小数を返し、偽の条件が通貨を返すことを示しています。0.0Mは小数を表すので、なぜそれが行われるのかわかりません。誰かが質問を手伝ってくれませんか?
RefundTemplate.Criteria.SetProjection(
Projections.ProjectionList()
.Add(Projections.Sum(Projections.Conditional
(Restrictions.Eq("PaymentType", "CK"),
Projections.Property("Gross"), Projections.Constant(0.0M))), "CashRefund")
.Add(Projections.Sum(Projections.Conditional
(Restrictions.Eq("PaymentType", "CC"),
Projections.Property("Gross"), Projections.Constant(0.0M))), "CreditRefund"));