我在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);
}
的區別是什麼?不是null總是null?或者當EF值爲可爲空(父類型爲int?)時,EF將它們視爲不同的元素。
在實際運行查詢之前是否修改了'category'對象? – svick
不,我不知道。我認爲@ a1ex01是正確的,如果你不使用常量null,它不會生成IS NULL查詢 – willvv
你檢查了生成的SQL嗎? – svick