Я вижу странное поведение в запросе EF и мне интересно, почему это происходит.
С помощью следующего кода я не получаю никаких результатов:
if (category.Parent == null)
{
return Db.EventCategories.Where(c => c.Parent == category.Parent);
}
Но с этим кодом он возвращает ожидаемые результаты:
if (category.Parent == null)
{
return Db.EventCategories.Where(c => c.Parent == null);
}
Какая разница? Разве ноль не всегда ноль? или EF рассматривает их как разные элементы, когда значение имеет значение NULL (Parent имеет тип int?).