Преобразование времени в указанную страну Часовой пояс - PullRequest
0 голосов
/ 17 февраля 2012

Я разместил сайт на сервере, чей часовой пояс отличается от моей местной страны,

как я могу преобразовать время сервера в местное время с учетом перехода на летнее время

Ответы [ 4 ]

3 голосов
/ 17 февраля 2012
DateTimeOffset newTime = TimeZoneInfo.ConvertTime(DateTimeOffset.UtcNow, TimeZoneInfo.FindSystemTimeZoneById("AppTimeZone"));
2 голосов
/ 17 февраля 2012

, чтобы откровенно принять ответы на другие вопросы SO:

В .NET 3.5 имеется TimeZoneInfo , которая предоставляет множество функций в этой области; 2.0SP1 имеет DateTimeOffset , но это намного более ограничено.

См. Следующие вопросы SO:

Получить DateTime для другого часового пояса, независимо от местного часового пояса

Преобразование даты и времени UTC в другой часовой пояс

Или просто выполните поиск SO , чтобы найти множество ответов, в том числе те, которые учитывают Летнее время .

1 голос
/ 17 февраля 2012

Вы смотрели на класс TimeZoneInfo.Вы должны иметь возможность преобразовывать время с локального на сервер и обратно, сохраняя при этом DST.

Существует также реализация часового пояса с открытым исходным кодом Jon Skeet et.Я звоню Нода-Тайм .

1 голос
/ 17 февраля 2012

Вы можете использовать класс TimeZone для преобразования локального времени сервера в UTC, а затем из UTC в часовой пояс вашего (или конкретного пользователя сайта).

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