hotcoder
hotcoder

Reputation: 3256

Check null values in Linq query in Entity Framework

How can I compare integer type null values Where portion of Linq query in .Net Entity framework 4.1?

Upvotes: 3

Views: 34477

Answers (2)

Devin Burke
Devin Burke

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

Wouter de Kort
Wouter de Kort

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

Related Questions