2
Я пытаюсь создать запрос Linq to Entities, который выбирает записи между двумя датами.Linq Query с диапазоном дат, не возвращающим никаких записей?
TimeCards.Where(t => t.StartTime >= DbFunctions.CreateDateTime(2015,1,31,null,null,null) && t.EndTime < DbFunctions.CreateDateTime(2017,2,14,null,null,null))
Это мой набор данных, который я ожидал, что вернулся
ID StartTime EndTime
1165 2016-02-01 00:15:00.000 2016-02-01 17:00:00.000
1166 2016-02-02 00:15:00.000 2016-02-02 17:00:00.000
1167 2016-02-03 00:15:00.000 2016-02-03 17:00:00.000
Но мои результаты возвращаются в 0 записей.
Любые идеи, почему это так?
Что такое тип данных для 'StartTime',' EndTime' и 'CreateDateTime'? Все 'DateTime'? Что произойдет, если вы используете '.Value' для всех типов« Nullable »? Что-то вроде: 'DbFunctions.CreateDateTime (2015,1,31, null, null, null) .Value' – Ian
Вы пробовали без использования DbFunctions? Также в таких ситуациях вы можете использовать SQL-профайлер (если его SQL-сервер), чтобы понять проблемы в linq-sql-запросе. –
может быть глупым, но просто чтобы поднять, вам нужно сделать ToList() на Где? – Anil