Какое значение я должен передать в TimeZoneInfo.FindSystemTimeZoneById (String)?

Ответы:

94

Вот список в Windows 8 (я извлек из реестра Windows)

Стандартное время Афганистана
Стандартное время Аляски
Стандартное время Аляски \ Динамическое летнее время
Арабское стандартное время
Стандартное арабское время
Стандартное арабское время
Стандартное арабское время \ Динамическое летнее время
Стандартное время Аргентины
Стандартное время Аргентины \ Динамическое летнее время
Атлантическое стандартное время
Атлантическое стандартное время \ Динамическое летнее время
Центральное стандартное время Австралии
Восточное стандартное время Австралии
Восточное стандартное время Австралии \ Dynamic DST
Стандартное время Азербайджана
Стандартное время Азорских островов
Стандартное время Азорских островов \ Динамическое летнее время
Стандартное время Баии
Стандартное время Баии \ Динамическое летнее время
Стандартное время Бангладеш
Стандартное время Бангладеш \ Динамическое летнее время
Центральное стандартное время Канады
Стандартное время Кабо-Верде
Стандартное время Кавказа
Стандартное время Кавказа \ Динамическое летнее время
Cen. Стандартное время Австралии
Cen. Стандартное время Австралии \ Динамическое летнее время
Стандартное время Центральной Америки
Стандартное время Центральной Азии
Центральное бразильское стандартное время
Центральное бразильское стандартное время \ Динамическое летнее время
Стандартное время Центральной Европы
Центральноевропейское стандартное время
Центрально-тихоокеанское стандартное время
Центральное стандартное время
Центральное стандартное время \ Динамическое летнее время
Центральное стандартное время (Мексика)
Китайское стандартное время
Строка дат Стандартное время
E. Стандартное время Африки
E. Стандартное время Австралии
E. Стандартное время Европы
E. Стандартное время Южной Америки
E. Стандартное время Южной Америки \ Динамическое летнее время
Восточное стандартное время
Восточное стандартное время \ динамическое летнее время
Стандартное время Египта
Стандартное время Египта \ Динамическое летнее время
Екатеринбургское Стандартное Время
Стандартное время Екатеринбурга \ Динамическое летнее время
Стандартное время Фиджи
Стандартное время Фиджи \ Динамическое летнее время
Стандартное время FLE
Стандартное время Грузии
Стандартное время по Гринвичу
Стандартное время Гренландии
Стандартное время Гренландии \ Динамическое летнее время
Стандартное время по Гринвичу
Стандартное время GTB
Гавайское стандартное время
Стандартное время Индии
Стандартное время Ирана
Стандартное время Ирана \ Динамическое летнее время
Стандартное время Израиля
Стандартное время Израиля \ Динамическое летнее время
Стандартное время Иордании
Стандартное время Иордании \ Динамическое летнее время
Калининградское Стандартное Время
Калининградское стандартное время \ Динамическое летнее время
Стандартное время Камчатки
Стандартное время Кореи
Стандартное время Ливии
Стандартное время Ливии \ Динамическое летнее время
Стандартное время Магадана
Стандартное время Магадана \ Динамическое летнее время
Стандартное время Маврикия
Стандартное время Маврикия \ Динамическое летнее время
Среднеатлантическое стандартное время
Стандартное время Ближнего Востока
Стандартное время Ближнего Востока \ Динамическое летнее время
Стандартное время Монтевидео
Стандартное время Монтевидео \ Динамическое летнее время
Стандартное время Марокко
Стандартное время Марокко \ Динамическое летнее время
Горное стандартное время
Горное стандартное время \ Динамическое летнее время
Стандартное горное время (Мексика)
Стандартное время Мьянмы
Северо-восточное стандартное время
Североазиатское стандартное время \ Динамическое летнее время
Стандартное время Намибии
Стандартное время Намибии \ Динамическое летнее время
Стандартное время Непала
Стандартное время Новой Зеландии
Стандартное время Новой Зеландии \ Динамическое летнее время
Стандартное время Ньюфаундленда
Стандартное время Ньюфаундленда \ Динамическое летнее время
Североазиатское восточное стандартное время
Североазиатское восточное стандартное время \ Динамическое летнее время
Стандартное время Северной Азии
Стандартное время Северной Азии \ Динамическое летнее время
Тихоокеанское стандартное время
Тихоокеанское стандартное время \ Динамическое летнее время
Тихоокеанское стандартное время
Стандартное тихоокеанское время \ Динамическое летнее время
Стандартное тихоокеанское время (Мексика)
Стандартное время Пакистана
Стандартное время Пакистана \ Динамическое летнее время
Стандартное время Парагвая
Стандартное время Парагвая \ Динамическое летнее время
Романтическое стандартное время
Российское стандартное время
Стандартное время России \ Динамическое летнее время
Восточное стандартное время SA
Тихоокеанское стандартное время
Стандартное западное время ЮАР
Стандартное время Самоа
Стандартное время Самоа \ Динамическое летнее время
Юго-восточное азиатское стандартное время
Стандартное время Сингапура
Стандартное время Южной Африки
Стандартное время Шри-Ланки
Стандартное время Сирии
Стандартное время Сирии \ Динамическое летнее время
Стандартное время Тайбэя
Стандартное время Тасмании
Стандартное время Тасмании \ Динамическое летнее время
Стандартное время Токио
Стандартное время Тонги
Стандартное время Турции
Стандартное время Турции \ Динамическое летнее время
Стандартное время Улан-Батора
Восточное стандартное время США
Восточное стандартное время США \ Dynamic DST
Стандартное горное время США
универсальное глобальное время
UTC + 12
UTC-02
UTC-11
Стандартное время Венесуэлы
Стандартное время Венесуэлы \ Динамическое летнее время
Стандартное время Владивостока
Стандартное время Владивостока \ Динамическое летнее время
Западное австралийское стандартное время
Стандартное время Западной Австралии \ Динамическое летнее время
Западное стандартное время Центральной Африки
Западное европейское стандартное время
Стандартное время Западной Азии
Стандартное время западной части Тихого океана
Якутское стандартное время
Якутское стандартное время \ Динамическое летнее время
Могхадери
источник
5
Хотя Великобритания, похоже, не появляется (GMT / BST), очевидно GMT Standard Time( stackoverflow.com/questions/4034923/… ).
SharpC
3
Для тех, кто интересуется, что такое Dynamic DST .... blogs.msdn.microsoft.com/bclteam/2007/06/07/…
Мик,
Очень большая помощь! Я тоже был точен! Это действительно помогло мне собрать для моего приложения: ~ private static TimeZoneInfo INDIA_ZONE = TimeZoneInfo.FindSystemTimeZoneById ("стандартное время Индии"); ~
PatsonLeaner
2
Существует разница между «Стандартное восточное время Австралии» выше и «Стандартное время Восточной Австралии», возвращаемое функцией TimeZoneInfo.GetSystemTimeZones (). Первый учитывает летнее время, а второй - нет. См. Dotnetfiddle.net/k3yKN4
Мартин
1
В кроссплатформенном мире .NET Core идентификатор часового пояса зависит от того, где выполняется код. Например, на Mac Сидней - это «Австралия / Сидней», в Windows 10 соответствующий часовой пояс - «Восточная Австралия».
Судханшу Мишра
39

Вы можете получить их из статического списка в TimeZoneInfoклассе

var infos = TimeZoneInfo.GetSystemTimeZones();
foreach (var info in infos)
{
    Console.WriteLine(info.Id);
}

Пример:

  var tzInfo = TimeZoneInfo.FindSystemTimeZoneById("New Zealand Standard Time");

Или, если вам просто нужен список идентификаторов часовых поясов, как предложил DJ KRAZE

  var timeZoneIds = TimeZoneInfo.GetSystemTimeZones().Select(t => t.Id);
sa_ddam213
источник
+1 Я бы создал var lstTimeZones = new List <string> (); затем замените console.WriteLine (info.Id); с lstTimeZones.Add (info.Id); внутри
MethodMan 04
16

Доступные часовые пояса:

Console.WriteLine(string.Join("\n",TimeZoneInfo.GetSystemTimeZones().Select(x=>x.Id)));

Результат:

Dateline Standard Time
UTC-11
Aleutian Standard Time
Hawaiian Standard Time
Marquesas Standard Time
Alaskan Standard Time
UTC-09
Pacific Standard Time (Mexico)
UTC-08
Pacific Standard Time
US Mountain Standard Time
Mountain Standard Time (Mexico)
Mountain Standard Time
Central America Standard Time
Central Standard Time
Easter Island Standard Time
Central Standard Time (Mexico)
Canada Central Standard Time
SA Pacific Standard Time
Eastern Standard Time (Mexico)
Eastern Standard Time
Haiti Standard Time
Cuba Standard Time
US Eastern Standard Time
Paraguay Standard Time
Atlantic Standard Time
Venezuela Standard Time
Central Brazilian Standard Time
SA Western Standard Time
Pacific SA Standard Time
Turks And Caicos Standard Time
Newfoundland Standard Time
Tocantins Standard Time
E. South America Standard Time
SA Eastern Standard Time
Argentina Standard Time
Greenland Standard Time
Montevideo Standard Time
Saint Pierre Standard Time
Bahia Standard Time
UTC-02
Mid-Atlantic Standard Time
Azores Standard Time
Cape Verde Standard Time
UTC
Morocco Standard Time
GMT Standard Time
Greenwich Standard Time
W. Europe Standard Time
Central Europe Standard Time
Romance Standard Time
Central European Standard Time
W. Central Africa Standard Time
Namibia Standard Time
Jordan Standard Time
GTB Standard Time
Middle East Standard Time
Egypt Standard Time
E. Europe Standard Time
Syria Standard Time
West Bank Standard Time
South Africa Standard Time
FLE Standard Time
Israel Standard Time
Kaliningrad Standard Time
Libya Standard Time
Arabic Standard Time
Turkey Standard Time
Arab Standard Time
Belarus Standard Time
Russian Standard Time
E. Africa Standard Time
Iran Standard Time
Arabian Standard Time
Astrakhan Standard Time
Azerbaijan Standard Time
Russia Time Zone 3
Mauritius Standard Time
Georgian Standard Time
Caucasus Standard Time
Afghanistan Standard Time
West Asia Standard Time
Ekaterinburg Standard Time
Pakistan Standard Time
India Standard Time
Sri Lanka Standard Time
Nepal Standard Time
Central Asia Standard Time
Bangladesh Standard Time
Omsk Standard Time
Myanmar Standard Time
SE Asia Standard Time
Altai Standard Time
W. Mongolia Standard Time
North Asia Standard Time
N. Central Asia Standard Time
Tomsk Standard Time
China Standard Time
North Asia East Standard Time
Singapore Standard Time
W. Australia Standard Time
Taipei Standard Time
Ulaanbaatar Standard Time
North Korea Standard Time
Aus Central W. Standard Time
Transbaikal Standard Time
Tokyo Standard Time
Korea Standard Time
Yakutsk Standard Time
Cen. Australia Standard Time
AUS Central Standard Time
E. Australia Standard Time
AUS Eastern Standard Time
West Pacific Standard Time
Tasmania Standard Time
Vladivostok Standard Time
Lord Howe Standard Time
Bougainville Standard Time
Russia Time Zone 10
Magadan Standard Time
Norfolk Standard Time
Sakhalin Standard Time
Central Pacific Standard Time
Russia Time Zone 11
New Zealand Standard Time
UTC+12
Fiji Standard Time
Kamchatka Standard Time
Chatham Islands Standard Time
Tonga Standard Time
Samoa Standard Time
Line Islands Standard Time
Анджело Ортега
источник
9

Взгляните на статический метод TimeZoneInfoвызываемого TimeZoneInfo.GetSystemTimeZones()метода.

Это вернет список всего TimeZoneInfoв вашей операционной системе из реестра. Все они хранятся в: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones.

Примером может служить «Стандартное время по Гринвичу» для часового пояса «Дублин, Эдинбург, Лиссабон, Лондон».

ДэйвШоу
источник
3

Последнюю документацию Microsoft со списком можно найти по адресу https://support.microsoft.com/en-gb/help/973627/microsoft-time-zone-index-values.

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

Стандартное время Самоа

Стандартное время Аляски

Горное стандартное время

Стандартное горное время США

Центральное стандартное время Канады

Стандартное время Центральной Америки

Восточное стандартное время США

Атлантическое стандартное время

Тихоокеанское стандартное время

E. Стандартное время Южной Америки

Стандартное время Гренландии

Стандартное время Азорских островов

Стандартное время по Гринвичу

Стандартное время Центральной Европы

Романтическое стандартное время

Западное стандартное время Центральной Африки

Стандартное время Египта

Стандартное время GTB

Стандартное время Южной Африки

Арабское стандартное время

Стандартное арабское время

Стандартное арабское время

Переходное время Исламского Государства Афганистан, стандартное время

Стандартное время Западной Азии

Стандартное время Непала

Стандартное время Шри-Ланки

Стандартное время Мьянмы

Стандартное время Северной Азии

Стандартное время Сингапура

Западное австралийское стандартное время

Стандартное время Кореи

Якутское стандартное время

Cen. Стандартное время Австралии

E. Стандартное время Австралии

Стандартное время Владивостока

Центрально-тихоокеанское стандартное время

Стандартное время Новой Зеландии

Стандартное время Азербайджана 

Стандартное время Иордании

Стандартное горное время (Мексика)

Стандартное время Намибии

Центральное бразильское стандартное время

Стандартное время Армении

Стандартное время Аргентины

Стандартное время Пакистана

универсальное глобальное время

Стандартное время Камчатки

d219
источник
3

Чтобы получить самый последний список часовых поясов, используйте tzutil из Windows:

цутил / л

Здесь вы можете найти официальный список идентификаторов часовых поясов от Microsoft в MSDN: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones

  ID      |   Time zone name
----------|------------------------
  0       |   Dateline Standard Time
  110     |   UTC-11
  200     |   Hawaiian Standard Time
  300     |   Alaskan Standard Time
  400     |   Pacific Standard Time
  410     |   Pacific Standard Time (Mexico)
  500     |   Mountain Standard Time
  510     |   Mountain Standard Time (Mexico)
  520     |   US Mountain Standard Time
  600     |   Canada Central Standard Time
  610     |   Central America Standard Time
  620     |   Central Standard Time
  630     |   Central Standard Time (Mexico)
  700     |   Eastern Standard Time
  710     |   SA Pacific Standard Time
  720     |   US Eastern Standard Time
  840     |   Venezuela Standard Time
  800     |   Atlantic Standard Time
  810     |   Central Brazilian Standard Time
  820     |   Pacific SA Standard Time
  830     |   SA Western Standard Time
  850     |   Paraguay Standard Time
  900     |   Newfoundland Standard Time
  910     |   E. South America Standard Time
  920     |   Greenland Standard Time
  930     |   Montevideo Standard Time
  940     |   SA Eastern Standard Time
  950     |   Argentina Standard Time
  1000    |   Mid-Atlantic Standard Time
  1010    |   UTC-2
  1100    |   Azores Standard Time
  1110    |   Cabo Verde Standard Time
  1200    |   GMT Standard Time
  1210    |   Greenwich Standard Time
  1220    |   Morocco Standard Time
  1230    |   UTC
  1300    |   Central Europe Standard Time
  1310    |   Central European Standard Time
  1320    |   Romance Standard Time
  1330    |   W. Central Africa Standard Time
  1340    |   W. Europe Standard Time
  1350    |   Namibia Standard Time
  1400    |   E. Europe Standard Time
  1410    |   Egypt Standard Time
  1420    |   FLE Standard Time
  1430    |   GTB Standard Time
  1440    |   Israel Standard Time
  1450    |   Jordan Standard Time
  1460    |   Middle East Standard Time
  1470    |   South Africa Standard Time
  1480    |   Syria Standard Time
  1490    |   Turkey Standard Time
  1500    |   Arab Standard Time
  1510    |   Arabic Standard Time
  1520    |   E. Africa Standard Time
  1530    |   Kaliningrad Standard Time
  1550    |   Iran Standard Time
  1540    |   Russian Standard Time
  1600    |   Arabian Standard Time
  1610    |   Azerbaijan Standard Time
  1620    |   Caucasus Standard Time
  1640    |   Georgian Standard Time
  1650    |   Mauritius Standard Time
  1630    |   Afghanistan Standard Time
  1710    |   West Asia Standard Time
  1750    |   Pakistan Standard Time
  1720    |   India Standard Time
  1730    |   Sri Lanka Standard Time
  1740    |   Nepal Standard Time
  1700    |   Ekaterinburg Standard Time
  1800    |   Central Asia Standard Time
  1830    |   Bangladesh Standard Time
  1820    |   Myanmar Standard Time
  1810    |   N. Central Asia Standard Time
  1910    |   SE Asia Standard Time
  1900    |   North Asia Standard Time
  2000    |   China Standard Time
  2020    |   Singapore Standard Time
  2030    |   Taipei Standard Time
  2040    |   W. Australia Standard Time
  2050    |   Ulaanbaatar Standard Time
  2010    |   North Asia East Standard Time
  2100    |   Korea Standard Time
  2110    |   Tokyo Standard Time
  2130    |   AUS Central Standard Time
  2140    |   Cen. Australia Standard Time
  2120    |   Yakutsk Standard Time
  2200    |   AUS Eastern Standard Time
  2210    |   E. Australia Standard Time
  2220    |   Tasmania Standard Time
  2240    |   West Pacific Standard Time
  2230    |   Vladivostok Standard Time
  2300    |   Central Pacific Standard Time
  2310    |   Magadan Standard Time
  2400    |   Fiji Standard Time
  2410    |   New Zealand Standard Time
  2430    |   UTC+12
  2500    |   Tonga Standard Time
  2510    |   Samoa Standard Time
Грегори Л
источник
2

Как уже говорили другие, вы можете найти список, повторяя, TimeZoneInfo.GetSystemTimeZones()чтобы найти строку, которую вы хотите использовать. Тем не менее, если у вас есть информация только о разнице во времени (например, GMT + 9 или GMT-10) и вы не можете найти свой часовой пояс после итерации часовых поясов, вы можете увидеть следующий URL-адрес, чтобы узнать, какой часовой пояс вам нужен https: / /msdn.microsoft.com/en-US/library/ms912391(v=winembedded.11).aspx

думдум
источник
1

Или вы можете передать вот TimeZoneInfo.Local.Idтак:

TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById(TimeZoneInfo.Local.Id);
DateTime localDateTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, tzi);
Пабинатор
источник
1

Вы можете использовать этот код ниже

using System;

namespace TimeZoneIds
{
    class Program
    {
        static void Main(string[] args)
        {
            foreach (TimeZoneInfo z in TimeZoneInfo.GetSystemTimeZones())
                Console.WriteLine(z.Id);
        }
    }
}
Джефферсон Бьен-Эйм
источник
0

Способ перехода от одного часового пояса к другому:

DateTime n = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(datetime, "sourceTimeZoneId", "destinationTimeZoneId");

Я на Win10, и список I Time Zone Idс time difference:

Dateline Standard Time                  -12
UTC-11                                  -11
Hawaiian Standard Time                  -10
Aleutian Standard Time                  -9
Marquesas Standard Time                 -9
UTC-09                                  -9
Alaskan Standard Time                   -8
UTC-08                                  -8
Pacific Standard Time (Mexico)          -7
Pacific Standard Time                   -7
US Mountain Standard Time               -7
Mountain Standard Time (Mexico)         -6
Mountain Standard Time                  -6
Central America Standard Time           -6
Easter Island Standard Time             -6
Canada Central Standard Time            -6
Central Standard Time                   -5
Central Standard Time (Mexico)          -5
SA Pacific Standard Time                -5
Eastern Standard Time (Mexico)          -5
Eastern Standard Time                   -4
Haiti Standard Time                     -4
Cuba Standard Time                      -4
US Eastern Standard Time                -4
Turks And Caicos Standard Time          -4
Paraguay Standard Time                  -4
Venezuela Standard Time                 -4
Central Brazilian Standard Time         -4
SA Western Standard Time                -4
Pacific SA Standard Time                -4
Atlantic Standard Time                  -3
Tocantins Standard Time                 -3
E. South America Standard Time          -3
SA Eastern Standard Time                -3
Argentina Standard Time                 -3
Montevideo Standard Time                -3
Magallanes Standard Time                -3
Bahia Standard Time                     -3
Newfoundland Standard Time              -2
Greenland Standard Time                 -2
Saint Pierre Standard Time              -2
UTC-02                                  -2
Mid-Atlantic Standard Time              -1
Cape Verde Standard Time                -1
Azores Standard Time                    0
UTC                                     0
Greenwich Standard Time                 0
Sao Tome Standard Time                  0
GMT Standard Time                       +1
Morocco Standard Time                   +1
W. Central Africa Standard Time         +1
W. Europe Standard Time                 +2
Central Europe Standard Time            +2
Romance Standard Time                   +2
Central European Standard Time          +2
Egypt Standard Time                     +2
South Africa Standard Time              +2
Kaliningrad Standard Time               +2
Sudan Standard Time                     +2
Libya Standard Time                     +2
Namibia Standard Time                   +2
Jordan Standard Time                    +3
GTB Standard Time                       +3
Middle East Standard Time               +3
E. Europe Standard Time                 +3
Syria Standard Time                     +3
West Bank Standard Time                 +3
FLE Standard Time                       +3
Israel Standard Time                    +3
Arabic Standard Time                    +3
Turkey Standard Time                    +3
Arab Standard Time                      +3
Belarus Standard Time                   +3
Russian Standard Time                   +3
E. Africa Standard Time                 +3
Iran Standard Time                      +4
Arabian Standard Time                   +4
Astrakhan Standard Time                 +4
Azerbaijan Standard Time                +4
Russia Time Zone 3                      +4
Mauritius Standard Time                 +4
Saratov Standard Time                   +4
Georgian Standard Time                  +4
Volgograd Standard Time                 +4
Caucasus Standard Time                  +4
Afghanistan Standard Time               +4
West Asia Standard Time                 +5
Ekaterinburg Standard Time              +5
Pakistan Standard Time                  +5
Qyzylorda Standard Time                 +5
India Standard Time                     +5
Sri Lanka Standard Time                 +5
Nepal Standard Time                     +5
Central Asia Standard Time              +6
Bangladesh Standard Time                +6
Omsk Standard Time                      +6
Myanmar Standard Time                   +6
SE Asia Standard Time                   +7
Altai Standard Time                     +7
W. Mongolia Standard Time               +7
North Asia Standard Time                +7
N. Central Asia Standard Time           +7
Tomsk Standard Time                     +7
China Standard Time                     +8
North Asia East Standard Time           +8
Singapore Standard Time                 +8
W. Australia Standard Time              +8
Taipei Standard Time                    +8
Ulaanbaatar Standard Time               +8
Aus Central W. Standard Time            +8
Transbaikal Standard Time               +9
Tokyo Standard Time                     +9
North Korea Standard Time               +9
Korea Standard Time                     +9
Yakutsk Standard Time                   +9
Cen. Australia Standard Time            +9
AUS Central Standard Time               +9
E. Australia Standard Time              +10
AUS Eastern Standard Time               +10
West Pacific Standard Time              +10
Tasmania Standard Time                  +10
Vladivostok Standard Time               +10
Lord Howe Standard Time                 +10
Bougainville Standard Time              +11
Russia Time Zone 10                     +11
Magadan Standard Time                   +11
Norfolk Standard Time                   +11
Sakhalin Standard Time                  +11
Central Pacific Standard Time           +11
Russia Time Zone 11                     +12
New Zealand Standard Time               +12
UTC+12                                  +12
Fiji Standard Time                      +12
Chatham Islands Standard Time           +12
Kamchatka Standard Time                 +13
UTC+13                                  +13
Tonga Standard Time                     +13
Samoa Standard Time                     +13
Line Islands Standard Time              +14

Код, чтобы узнать разницу во времени:

DateTime dt = Convert.ToDateTime("2020-04-17T09:00:00");
Dictionary<string, int> zoneHour = new Dictionary<string, int>();
var infos = TimeZoneInfo.GetSystemTimeZones();
foreach (var info in infos)
{
    zoneHour.Add(info.Id,
        TimeZoneInfo.ConvertTimeBySystemTimeZoneId(dt, "UTC", info.Id).Subtract(dt).Hours
    );
}

var zoneHourOrder = zoneHour.OrderBy(z => z.Value);
foreach (var kv in zoneHourOrder)
{
    Console.WriteLine(kv.Key.PadRight(40) + (kv.Value > 0 ? "+" + kv.Value : kv.Value.ToString()));
}
Ю Ян Цзянь
источник