という列を持つUser
テーブルがあり、変更できません。一部のレコードには、実際にはその列にが含まれています。BIT NULL
NxEnabled
NULL
C#でNullableを使用したくないので、プロジェクションでtrueと比較するのは理にかなっています(コードは単純化されていますが、これは同じエラーを生成します):
context.Users.Where(x => x.Id == 4)
.Select(x => new
{
Id = x.Id,
Name = x.Name,
Enabled = x.NxEnabled == true
});
このクエリが
InvalidOperationException:null値は、null許容値ではないタイプのSystem.Booleanタイプのメンバーに割り当てることはできません。`
列挙されたとき?
編集:タイプミスでごめんなさい。クエリは実際にはもっと複雑でしたが、where句は問題ではありません。