2011-04-06 35 views
0

免责声明
虽然this question looked like a potential duplicate,它是参照IsAmbiguousTime解决。这并不能解决我的问题,因为我注意到差异的时间没有被报告为不明确。.NET的TimeZoneInfo错摩洛哥夏令

的问题,然后...
虽然timeanddate.com说,摩洛哥今年观察到4月3日和7月31日之间的夏令时,与由worldtimeserver.com提供的当前时间似乎暗示,这是的情况下,。 NET TimeZoneInfo不报告卡萨布兰卡时间,既可以采用具有任何AdjusmentRulesAmbiguousTimeOffsets有关的一年2011年

事实上,我的计算机的时钟设置到卡萨布兰卡的时候,它会在当前的时间设置为一小时早于什么是引作为卡萨布兰卡目前的时间线上资源。

.NET库在这方面是不准确的,还是所有其他来源都有问题?鉴于.NET库是不准确的来源,这是一个常见问题吗?我发现这个实例的原因很简单,因为这个差异发生在.NET枚举的第一个时区是令人不安的。这是基于本地数据库,我可以不断更新自己?

回答

1

如在TimeZoneInfo.GetSystemTimeZones的MSDN条目中所述,.NET从注册表中获取其信息。搜索Microsoft Support for DST显示了一个非常活跃的时区更新历史记录。不幸的是,自12月以来,卡萨布兰卡的更新并没有发生,12月的更新听起来像是为摩洛哥取消了夏令时设置。

+0

好吧,看来我只是想说“如果微软能够接受这个,那么我也可以”。感谢你的投入,你们俩。 – 2011-04-07 09:21:02

+0

我也有这个问题。安装2011年DST更新后仍然没有喜悦。无论我尝试什么,试图在东澳得到时间都不考虑DST。请参阅http://stackoverflow.com/questions/8356866/asp-net-3-5-difficulty-getting-timezones-current-offset – 2011-12-02 17:51:49

2

看起来摩洛哥可能决定在今年之后放弃DST。微软似乎已经跳起了枪,并且早早地移除了DST。

如果您查看此链接,请注意他们表示2012年以后没有DST更改。

http://www.timeanddate.com/worldclock/timezone.html?n=60

由于DocMax说,DST从OS计算的,所以这不是一个.NET的问题。这是一个Windows问题。