我一直在寻找高低,找不到答案。为什么 TZI 不一样?
我在 MSDN 上做了一些挖掘并看到了这个:http: //msdn.microsoft.com/en-us/library/system.timezoneinfo.findsystemtimezonebyid.aspx
其中明确指出:
FindSystemTimeZoneById 尝试将 id 与 Windows XP 和 Windows Vista 下注册表的 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones 分支的子项名称匹配。此分支不一定包含时区标识符的完整列表。
所以我认为这意味着它每次都会进入注册表?
但这使问题变得混乱:http: //msdn.microsoft.com/en-us/library/system.timezoneinfo.utc.aspx
并说:
这是一个内置对象;不会从注册表中检索有关此 TimeZoneInfo 对象的信息。
所以看起来我的调用FindSystemTimeZoneById()
实际上是短路并返回 TimeZoneInfo.UTC,而不是去注册表!这不是主意,因为我想要其他版本的 DisplayName。是什么赋予了???