Есть ли в C # ошибка, связанная с DST, если да, то предоставила ли MS исправление об этом и как? - PullRequest
0 голосов
/ 14 октября 2011

Кто-нибудь знает, есть ли в C # ошибка, связанная с DST, если да, то предоставила ли MS исправление об этом и как?Большое спасибо.

Я установил часовой пояс своего ноутбука на UTC +02: 00 Иерусалим и установил флажок - «автоматически настраивать часы на летнее время».

С http://www.timeanddate.com/worldclock/timezone.html?n=110&syear=2010,мы видим, что в 2010-03-26 в 02:00 Иерусалим начал использовать летнее время и изменил часовой пояс с UTC + 2 на UTC + 3.Я пишу программу для проверки своего предположения: C # до сих пор использует UTC + 2 для Иерусалима до 04/01 и начинает использовать DST для Иерусалима (UTC + 3) с 04/02.

System.DateTime givenDate = Convert.ToDateTime("03/24/2010 08:00");
givenDate = DateTime.SpecifyKind(givenDate, DateTimeKind.Local);
Console.WriteLine(givenDate.ToUniversalTime());

givenDate = Convert.ToDateTime("03/26/2010 08:00");
givenDate = DateTime.SpecifyKind(givenDate, DateTimeKind.Local);
Console.WriteLine(givenDate.ToUniversalTime());


givenDate = Convert.ToDateTime("04/01/2010 08:00");
givenDate = DateTime.SpecifyKind(givenDate, DateTimeKind.Local);
Console.WriteLine(givenDate.ToUniversalTime());

givenDate = Convert.ToDateTime("04/02/2010 08:00");
givenDate = DateTime.SpecifyKind(givenDate, DateTimeKind.Local);
Console.WriteLine(givenDate.ToUniversalTime());

3 /24/2010 6:00:00 AM
26.03.2010 6:00:00 AM
01.04.2010 6:00:00 AM ===> C # по-прежнему использует UTC + 2 для Иерусалима.
4/4/2010 5:00:00 AM ===> с 4/2 C # начинает использовать DST для Иерусалима, изменено на UTC + 3

Кто-нибудь знает, является ли это C #ошибка, если так, как это исправить?

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