Почему OData возвращает значения Json DataTime в формате UTC (например, «2019-02-15T17:29:38.583Z»), а конечная точка, которая просто возвращает сущность, datetime пропускает «Z» (например, «2019-02-15T19:19»). :04,783"). Для сериализатора Json нет пользовательского форматирования или сериализации, не используются такие настройки, как DateTimeZoneHandling.
Объекты DateTime сохраняются в БД как UTC, в коде C# DTO содержит эти значения правильно, а тип не указан, как в OData, так и в сущности.
Почему такое поведение? Мне нужно, чтобы Json выводил дату и время в формате UTC (с Z). Приветствуются любые объяснения и настройки для достижения этого.
Спасибо.
Версия фреймворка: 4.5.2
Возможный дубликат Где спецификатор формата DateTime 'Z'?
Нет +0900
Вопрос больше связан с сериализацией json, а не с разбором строк, потому что ничего из этого не происходит в моем коде. Вопрос в том, почему OData сериализует дату и время иначе, чем веб-API объекта, и что я могу с этим поделать.





Когда он пропускает Z, включает ли он что-то вроде
+0900(или любого другого часового пояса, в котором вы находитесь)? Мне любопытно, обрабатывает ли он дату как местное время или универсальное.