今週のデータベースのフィールドの合計を実行したいと思います。たとえば、今日が水曜日の場合、現在の月曜日から水曜日までの合計を実行したいのですが、木曜日の場合は月曜日から木曜日までです。NHibernateでプロジェクションクエリを使用してこれを行うにはどうすればよいですか?以下のコードでは、データをグループ化して、今週の合計のみを表示するようにします。データベース内の日付のフィールドの名前はMyDateで、タイプはdatetimeです。
DateTemplate.Criteria = DetachedCriteria.For(typeof(MyBill));
DateTemplate.Criteria.SetProjection(
Projections.ProjectionList()
.Add(Projections.Sum(Projections.Conditional
(Restrictions.Eq("PayType", "ABC"),
Projections.Constant(1), Projections.Constant(0))), "GCashSales")
.Add(Projections.Sum(Projections.Conditional
(Restrictions.Eq("PayType", "DEF"),
Projections.Constant(1), Projections.Constant(0))), "GCreditSales"));