получение индекса часового пояса Windows при использовании TimeZoneInfo.GetSystemTimeZones (); - PullRequest
4 голосов
/ 27 марта 2012

Поэтому я боролся со списком часовых поясов в .net 4 (C #), чтобы заполнить раскрывающийся список в форме. Я знаю, что могу сделать это:

var TimeZoneList = TimeZoneInfo.GetSystemTimeZones();

, который будет получать список часовых поясов в классе TimeZoneInfo, который имеет свойство Id. Идентификатор не является индексом часового пояса Microsoft.

Например, для восточного времени «Id» - это просто «восточное стандартное время», где внутренним индексом является «35». (Остальные индексы здесь: http://msdn.microsoft.com/en-us/library/ms912391(v=winembedded.11).aspx)

Есть ли какой-нибудь способ получить эти индексы из TimeZoneInfo.GetSystemTimeZones () или есть какой-то другой метод, который я могу вызвать, чтобы найти их? Я знаю, что могу просто сделать переключение или несколько операторов if для проверки каждого идентификатора и сопоставления значения индекса, но я думаю, что должен быть лучший способ.

Спасибо!

1 Ответ

0 голосов
/ 27 марта 2012

Это немного устарело, но эта публикация на форуме MSDN с 2008 года (.NET 3.5) предполагает, что хорошего сопоставления не существует, и, возможно, вам следует создать таблицу перекрестных ссылок из идентификаторов TimeZoneInfo в часовой пояс Идентификаторы со страницы, на которую вы указываете.

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