2

これが私の質問です:

from f in DataAccess.Data.FList
join fA in DataAccess.Data.FAppsList on f.ID equals fA.fID into fApps
from fA in fApps.Where(fA => fA.Year == reportYear).DefaultIfEmpty() 
join fSrc in DataAccess.Data.FSourcesList on new { ID = fA.sourceID, CropYear = reportYear } 
equals new { ID = fSrc.ID, CropYear = fSrc.CropYear }

fA == nullの場合、オブジェクト参照null例外が発生します。fAで左結合を実行しているため、null値またはnull値ではない可能性があります。fAがnullの場合にクエリが例外をスローしないように、クエリのこのセクションを書き直すにはどうすればよいですか。

どうもありがとう!

4

1 に答える 1

1

式のメンバーの呼び出しを保護するために使用できる3値条件演算子(?:の一般的な構成は次のとおりです。null-valued

foo != null ? foo.bar : anExpressionThatDoesNotUseFoo

コンテキスト:

new {
  ID = fA != null ? fA.sourceID : 0, // or as appropriate
  ..
} 
于 2012-12-03T22:12:56.307 に答える