Это может быть дубликат, но ничего, что я нашел до сих пор, не разрешил эту проблему для меня.Найти, где nullable long == null в Entity Framework 6
Я пытаюсь сделать простой метод Linq
List<MyObject> unusedObject = _context.MyObjects.Where(o => o.CreatorUserId == null).ToList();
CreatorUserId является обнуляемым долго. В моей базе данных я вижу не менее 10 объектов с CreatorUserId = NULL, но этот вызов возвращает 0 объектов.
Я использую Ef6, в котором я думал, что все такие пустые вопросы были зафиксированы
Edit - MyObject
[Table("MyObjects")]
public partial class MyObject
{
public MyObject()
{
}
[Key]
public long MyObjectId { get; set; }
public long? CreatorUserId { get; set; }
public virtual User CreatorUser { get; set; }
}
Edit 2 -trace журнала
SELECT
CAST(NULL AS bigint) AS [C1],
CAST(NULL AS bigint) AS [C2]
FROM (SELECT 1 AS X) AS [SingleRowTable1]
WHERE 1 = 0
Работает ли он, если вы пытаетесь o.CreatorUserId.Equals (null)? – mybirthname
Просьба показать «MyObjects» –
: http://stackoverflow.com/questions/19299038/using-context-database-log-in-mvc-web-app прочитать sql, который создает EF, чтобы увидеть, где не все соответствующий вашему ожидаемому sql. –