Veo un comportamiento extraño en una consulta EF y me pregunto por qué está sucediendo. Con el siguiente código que no obtienen ningún resultado:Valor nulo del marco de la entidad en la consulta
if (category.Parent == null)
{
return Db.EventCategories.Where(c => c.Parent == category.Parent);
}
Pero con este código no se devuelven los resultados esperados:
if (category.Parent == null)
{
return Db.EventCategories.Where(c => c.Parent == null);
}
¿Cuál es la diferencia? ¿No es nulo siempre nulo? o ¿EF los trata como elementos diferentes cuando el valor es anulable (Parent es de tipo int?).
¿Modifica el objeto 'category' antes de ejecutar realmente la consulta? – svick
No, yo no. Creo que @ a1ex01 es correcto, si no usas la constante nula, no generará la consulta IS NULL – willvv
¿Has verificado el SQL generado? – svick