linq to entities ステートメントで Max 値の null をどのように処理しますか?
int UserLevelID = db.Characters.Where(o => o.UserId == UserID).Max(o => o.LevelID);
linq to entities ステートメントで Max 値の null をどのように処理しますか?
int UserLevelID = db.Characters.Where(o => o.UserId == UserID).Max(o => o.LevelID);
あなたがそのコードのどこにもカウントを参照していないので、あなたがカウントと言うときあなたが何を意味するのかよくわかりません。nullを処理する方法がわからない場合は、次のようにするo.LevelID
ことができます。
Max(o => o.LevelID ?? -1);
??
.NETの合体演算子です
アップデート
これを試して:
db.Characters.Where(o => o.UserId == UserID).Max(o => o == null ? 0 : o.LevelID);
o.LevelID が null の場合、「IFNULLDEFAULTVALUE」を希望する値に置き換えて、次のようにすることができます。
int UserLevelID = db.Characters.Where(o => o.UserId == UserID).Max(o => (o.LevelID != null ? o.LevelID : IFNULLDEFAULTVALUE);