任意のレコードがある場合、私は、次のLINQツーエンティティはこのスキーマLINQ(によるとカウント)
Table P Table R Table Q
PK*
RK ----> RK*
Text QK ------> QK*
Text Text
に対して実行され、このメッセージを表示します
from r in ctx.Rs
join p in ctx.Ps on r.RK equals p.RK
group r by r.QK into gr
select new { QK = (int)gr.Key, Num = gr.Count() }
を照会していますQ:対応するレコードがPにありません: "値の型 'Int32'へのキャストは、マテリアライズされた値がnullであるため失敗しました。結果型の汎用パラメータまたはクエリでnull可能型を使用する必要があります。
問題は最終行のgr.Count()ですが、解決策が見つかりません。私はnullのgrをテストしようとしましたが、動作する方法を見つけることができません。
私はCount()の代わりにSum()を使用して同様の問題を解決しましたが、私はそれらを問題に適応させることができませんでした。
Group and Count in Linq issueのようにクエリを変更しようとしましたが、別のメッセージが表示されました。
また、Group and Count in Entity Framework(と他の多くの番号)を見ましたが、問題は異なります。
ありがとうございました。残念ながら、これは同じメッセージを返します。 –