Исходя из моего последнего вопроса , который @ Jon Skeet оказал мне большую помощь (спасибо еще раз!)
Теперь мне интересно, как можно безопасно работать с датой / временем, сохраненным в формате UTC, когда они конвертируются обратно в локальную дату / время.
Как указал Джон в моем последнем вопросе, использование DateTimeOffset
представляет собой момент во времени, и нет никакого способа предсказать, какое местное время будет сказано через минуту. Мне нужно уметь делать расчеты на основе этих даты / времени.
Так как же я могу убедиться, что когда я извлекаю даты из базы данных, конвертирую их в локальную дату / время и выполняю конкретные расчеты, они будут точными?
Сценарий
Мое приложение записывает информацию, отправленную по электронной почте. Дата / время получения электронного письма записывается как время отправки. Письма извлекаются из обмена.
Что мне нужно знать, это:
1) Если эти письма приходят из разных стран, могу ли я просто преобразовать дату / время Recieved
письма в формат UTC и сохранить их? например Email.Received.ToUniversalTime()