Конвертация даты C#

241
16 марта 2018, 11:14

Получаю с сервера данные, дата имеет такой формат: 2018-03-15T00:00:00+03:00.

Вытягиваю дату из ответа:

Date = Convert.ToDateTime(GetValue(task, "Date"))

И на выходе получаю дату 03/14/2018 (на 3 часа меньше, чем есть). Пробовал использовать разные культуры, добавлять ToUniversalTime/ToLocalTime, но все равно на выходе не та дата.

Как правильно конвертировать дату, чтоб она была в нужном формате?

Answer 1

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

var date = "2018-03-15T00:00:00+03:00";
var dateOffset = DateTimeOffset.Parse(date);
READ ALSO
Операции со строками

Операции со строками

Как можно, перед тем как сделала депозит 1050, спарсить → конвертировать в float → записать данные которые были до депозита (1138

206
C# WPF вылет приложения

C# WPF вылет приложения

На компьютере стояла Windows 7, было произведено обновление до 10Перестали запускаться приложения WPF

188
Как передать ссылку на стек

Как передать ссылку на стек

Как передать ссылку на стек

194