Как преобразовать значение даты и времени в C # в часовой пояс UTC - PullRequest
0 голосов
/ 21 декабря 2018

Мне нужно передать значение типа DateTime в API в следующем формате

2018-12-02T07:00:00.000Z //required format

, но значение datetime из базы данных, которое я получаю, равно

2018-10-25 05:30:00.0000000

Сейчасиспользуя .ToString("o"), значение отформатировано как

2018-10-25T05:30:00.0000000

Проверено ниже SO ссылки

Где находится спецификатор формата DateTime 'Z'?

http://stackoverflow.com/questions/9163977/converting-datetime-to-z-format

но не преобразуется в требуемый формат.

Насколько я понимаю, Z в дате и времени представляет UtcTimeZone.

1 Ответ

0 голосов
/ 21 декабря 2018

Вы ищете что-то подобное?

var baseTime = DateTime.Parse("2018-10-25 05:30:00.0000000");
var utcTime = baseTime.ToUniversalTime();
Console.WriteLine(utcTime.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"));

Вы можете попробовать это здесь: https://dotnetfiddle.net/HsdMcu

Если у вас есть летнее и зимнее время в вашем регионе, вам может понадобитьсяиспользуйте немного более изощренный способ для правильного анализа начального времени, это можно найти в этом ответе .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...