C # UTC для преобразования местного времени неожиданные результаты - PullRequest
0 голосов
/ 13 марта 2012

Со вчерашнего дня (в первый день американской настройки перехода на летнее время.) Один и тот же код, который работает на двух разных компьютерах, дает разные результаты. Вот код:

DateTime t = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(
          DateTime.UtcNow, r.timeZone);

В качестве часового пояса здесь используется «Стандартное восточное время США»

Ввод (DateTime.UtcNow) - 2012/03/13 19: 10: 00

На компьютере с Windows XP SP3 код возвращается: 2012/03/13 14: 10: 00

На компьютере с Windows Server 2008 возвращается тот же код: 2012/03/13 15: 10: 00

Этого не ожидается. Есть мысли?

Лучший.

1 Ответ

4 голосов
/ 13 марта 2012

Текущий часовой пояс на компьютере с XP - "Восток США Стандартный Время", в то время как текущий часовой пояс на компьютере с сервером - "Восток США Дневной свет Время".США изменились со стандартного на летнее время в воскресенье.Возможно, на машине XP необходимо обновить информацию о часовом поясе.

...