Devart DotConnect forPostgreSQLコネクタを使用してEntityFrameworkエンティティのnullフィールドをクエリすると、奇妙な動作が見られます。
例:次の2つのテストを行った場合:
var test1 = context.blocs.Where(x => x.id_bloc == null); var test2 = context.blocs.Where(x => x.id_bloc == 100);
EF自動生成SQLクエリをチェックすると、次の結果が得られます。
test1の結果:
{選択する CAST(NULL AS int)AS "C1"、 CAST(NULL AS varchar)AS "C2"、 CAST(NULL AS varchar)AS "C3"、 CAST(NULL AS varchar)AS "C4" FROM(SELECT 1 AS X)AS "SingleRowTable1" WHERE true = false}
test2の結果:
{選択する "Extent1" .id_bloc、 "Extent1" .numero、 "Extent1" .nom、 "Extent1" .titre FROM "role" .bloc AS "Extent1" WHERE "Extent1" .id_bloc = 100}
nullフィールドをクエリしたときの結果は非常に奇妙です...テスト2の結果と同様の結果を期待していましたが、"Extent1".id_bloc IS NULL
WHERE句があります...
バグですか?nullフィールドを効果的にクエリするにはどうすればよいですか?