У меня проблема со сравнением дат в LINQ с выражением сущностей. Я хотел бы проверить, если DateTime == DateTime - whole day
.
Я хотел сделать это так:
return context.Events.Any(x =>
x.UserId == id
&& x.Date >= date
&& x.Date < date.AddDays(1)
&& x.Type == EventType.StartWork);
Проблема в том, что приведенный выше запрос некорректен для LINQ из-за метода AddDays().
Я пытался использовать DbFunctions, как показано ниже:
return context.Events.Any(x =>
x.UserId == id
&& x.Date >= date
&& x.Date < DbFunctions.AddDays(date, 1)
&& x.Type == EventType.StartWork);
Также этот:
return context.Events.Any(x =>
x.UserId == id
&& DbFunctions.TruncateTime(date.Date) == date.Date
&& x.Type == EventType.StartWork);
Ни один из этих запросов не дает ожидаемых результатов.