Reputation: 3256
How can I compare integer type null values Where portion of Linq query in .Net Entity framework 4.1?
Upvotes: 3
Views: 34477
Reputation: 13820
If you are comparing to a null
value, you must first compare your value to null
due to a bug.
var field = from field in table
where (value == null ? field.property == null : field.property == value)
select field;
Upvotes: 7
Reputation: 39898
You can only compare an int
to NULL
if the int
is nullable
. If not, the default value for int
will be 0
and never null
.
You define a nullable int property like this:
int? value { get; set; }
And check it like this:
if ( value != null )
{
int x = value.Value;
}
In the where clause of a Linq query it would be
var result = from d in data
where d.Value != null
select d
Upvotes: 12