Мне нужно перевести поле с UTC по местному времени в запросе LINQ to Entities. Но он не распознает метод «System.DateTime ToLocalTime», который я должен был использовать.UTC to local time using Linq to Entities
Мой запрос был таким образом:
Выберите запросы, для которых не существует какой-либо другой запрос в тот же день в местной еще не решен. Учитывая, что IncommingDateTime хранится в UTC, это запрос.
from r in Requests
where Request.Count(x => x.IncommingDateTime.ToLocalTime().Date == r.IncommingDateTime.ToLocalTime().Date
&& x.Resolved == false) = 0
select r
Буду признателен за любую помощь.
Спасибо, Джон. Вы правы относительно свойства DateTime.Day. Я ожидаю, что на данный момент сервер будет использовать свое местное время (я изменю это позже, чтобы использовать определенный часовой пояс). И, что касается базы данных, у меня нет выбора в хранении в UTC. –
@ViBela: Когда вы говорите «сервер» - есть два задействованных сервера: тот, который использует код .NET и базу данных. На данный момент они могут быть одной и той же коробкой, но вы должны понять в своем уме, что * логический *, о котором вы говорите :) –