以下の linq ステートメントは、一致するレコードが見つからない場合に例外エラーを返します。とにかくこれを処理する方法はありますか?, アドバイスしてください, ありがとう
AdventureEntities hem = new AdventureEntities ();
Guid productId;
Adventure.Product list= hem.Product .Where(x => x.Product== productId).FirstOrDefault();
以下の linq ステートメントは、一致するレコードが見つからない場合に例外エラーを返します。とにかくこれを処理する方法はありますか?, アドバイスしてください, ありがとう
AdventureEntities hem = new AdventureEntities ();
Guid productId;
Adventure.Product list= hem.Product .Where(x => x.Product== productId).FirstOrDefault();
いいえ、それは例外をスローするべきではありません。ただし、結果がない場合は-に設定list
されます。null
FirstOrDefault
次に を逆参照list
すると、NullReferenceException
. 最初に nullity をチェックするだけでこれを回避できます。
if (list != null)
{
// Use the list
}
またFirstOrDefault
、述語を受け入れるオーバーロードを使用して、コードを簡単にすることもできます。
var list = hem.Product.FirstOrDefault(x => x.Product== productId);