NikFaraday
@NikFaraday
Student full-stack Developer

Как сделать выборку по дате в Entity Framework Core?

Здравствуйте

Делаю выборку из БД таким образом:

var events = await _repository.Entities
                .Include(ev => ev.Client)
                .Include(ev => ev.Executor)
                .Where(ev => ev.ScheduleDate >= DateTimeOffset.Now)
                .Take(count)
                .ToListAsync();

            return events;


Но я исключение типа:
System.InvalidOperationException: The LINQ expression 'DbSet() .Where(e => e.ScheduleDate >= DateTimeOffset.Now)' could not be translated. Either rewrite the query in a form that can be translated, or switch to client evaluation explicitly by inserting a call to 'AsEnumerable', 'AsAsyncEnumerable', 'ToList', or 'ToListAsync'.

Как это решить?
  • Вопрос задан
  • 189 просмотров
Решения вопроса 1
EF говорит, что он не знает, как преобразовать DateTimeOffset.Now в SQL.
Очевидное решение - получить текущее время в коде и в запросе использовать переменную.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы