0

Linq to Sqlで「IS NULL」SQL構文を表現するにはどうすればよいですか?

Where(r => (r.Level1.Equals(l[1] == "" ? null : l[1]))

上記のコードでは、linq to sql は linq 式を次の sql に変換しますが、これは私が望むものではありません。

@p1=NULL

私のlinqを次のSQLに変換したい

@p1 is null

どうすればこれを達成できますか?

4

1 に答える 1

2

これを試して

if (l[1] == "")
    Where(r => (r.Level1 == null));
else
    Where(r => (r.Level1 == l[1]));

三項演算子を使用すると、式エバリュエーターはそれが文字列を返す式であることを検出します。このため、= 演算子が使用されます。

于 2013-05-14T17:07:51.713 に答える