Вопрос по timezone, c#, .net – C # британское летнее время (BST) сокращение часового пояса

16

Мне нужно отобразить метку с текущим сокращением часового пояса. Часовой пояс моего компьютера в настоящее время установлен на «(GMT) среднее время по Гринвичу: Дублин, Эдинбург, Лиссабон, Лондон». В результате я хотел бы видеть BST, поскольку LN в настоящее время в британском летнем времени.

Похоже, что информация (сокращение от часового пояса) недоступна. Глядя на GMT TimeZoneInfo, все, что я вижу в отношении имен, это

<code>Id  "GMT Standard Time"
StandardName    "GMT Standard Time"
DaylightName    "GMT Daylight Time"
</code>

Есть ли способ добраться до BST из "GMT Daylight Time"? или любая другая доступная информация о часовом поясе Windows?

Ваш Ответ

3   ответа
2

что все часовые пояса с надписью "Стандартный" будет правильно переключаться на летнее время летом. НапримерTimeZoneInfo.FindSystemTimeZoneById("GMT Standard Time") будет объектом, который может правильно обрабатывать как стандартное, так и дневное время. То же самое верно, скажем,"Pacific Standard Time".

15

TimeZoneInfo классы, ссылающиеся на «британское летнее время»; как & quot; GMT Daylight Time & quot ;, поэтому нет, это невозможно. Если Microsoft будет хранить его как «BST» это было бы вDaylightName имущество.

Следуя за развитиемTimeZoneInfo Много лет назад в блоге BCL я не видел объяснения тому, как они выбирали значения дляDaylightName, Если бы я догадался, это было бы потому, что это для «часового пояса» и не конкретный город.

Похоже, что общественное достояниеtzdatabaseкоторый считается более полным, чем база данных Microsoft о часовых поясах, отображает BST для Лондона (источник). Это потому, что в этот набор данных включены города, а не только часовые пояса. Существует проект под названиемВремя Нода это приводит tzdatabase к .Net, который теперь доступен.

Error: User Rate Limit Exceeded
1

обработка специального случая для часового пояса GMT или обобщенная обработка для «часовых поясов, для которых Microsoft использует неправильное имя».

Интересно, например, используют ли португальцы «GMT»? для их часового пояса зимой. Независимо от того, делают они это или нет, я сомневаюсь, что они используют «Британское летнее время». летом!

Похожие вопросы