誰かが以下の質問を手伝ってくれませんか。クライアントごとのすべての領収書の合計を選択しようとしています。しかし、selectセクションの'Total ='サブクエリが機能せず、次のエラーが発生します。
タイプ'AppName.Domain.Entities.AccountingEntry'の定数値を作成できません。このコンテキストでは、プリミティブ型または列挙型のみがサポートされています。
そのクエリの後でToList()を実行しようとしましたが、同じ問題が発生します。linqを使用してサブクエリとしてSumを選択する標準的な方法は何ですか?
var receipts = (from ae in repo.AccountingEntries
join c in repo.Clients on ae.ClientId equals c.ClientId
join m in repo.Memberships on c.MembershipId equals m.MembershipId
where
(ae.EntryDate <= start) &&
(ae.ClientId != null) &&
(ae.AccountingEntryTypeId == (byte)Shared.AccountingEntryTypes.Receipt)
select new AppName.Reports.Clients.AgeAnalysis.Receipt
{
ClientId = (Guid)ae.ClientId,
Client = c.FirstName + " " + c.LastName,
Membership = c.Membership.Name,
Total = (from ae2 in repo.AccountingEntries where ae2.ClientId == ae.ClientId select ae2.Total).Sum()
});
ありがとう、ゲイリー