0

linq to entities ステートメントで Max 値の null をどのように処理しますか?

int UserLevelID = db.Characters.Where(o => o.UserId == UserID).Max(o => o.LevelID);
4

2 に答える 2

1

あなたがそのコードのどこにもカウントを参照していないので、あなたがカウントと言うときあなたが何を意味するのかよくわかりません。nullを処理する方法がわからない場合は、次のようにするo.LevelIDことができます。

Max(o => o.LevelID ?? -1);

??.NETの合体演算子です

アップデート

これを試して:

db.Characters.Where(o => o.UserId == UserID).Max(o => o == null ? 0 : o.LevelID);
于 2012-07-06T23:41:30.960 に答える
0

o.LevelID が null の場合、「IFNULLDEFAULTVALUE」を希望する値に置き換えて、次のようにすることができます。

int UserLevelID = db.Characters.Where(o => o.UserId == UserID).Max(o => (o.LevelID != null ? o.LevelID : IFNULLDEFAULTVALUE);
于 2012-07-06T23:57:19.217 に答える