C#支持全球不同的时区ID。请在下面的链接中找到C#支持的时区列表:
https://msdn.microsoft.com/en-us/library/gg154758.aspx
时区ID用于C#库函数,以跨时区转换时间。
[e.g。 TimeZoneInfo.ConvertTimeBySystemTimeZoneId("Hawaiian Standard Time")
]
同样,我希望支持AMERICA / MIQUELON,这在上面链接中提供的msdn列表中不存在。
有人可以为这个特定的时区提供解决方法吗?
答案 0 :(得分:0)
"America/Miquelon"
等时区标识符以及您列出的其他标识符(编辑问题之前)来自IANA时区数据库。您可以在the timezone tag wiki和on Wikipedia中阅读更多内容。
请注意,它们通常以混合大小写形式呈现,而不是全部大写字母。
在.NET中使用这些文件的最简单和最好的方法是通过Noda Time库。
例如:
DateTimeZone tz = DateTimeZoneProviders.Tzdb["America/Miquelon"];
Instant now = SystemClock.Instance.Now;
ZonedDateTime converted = now.InZone(tz);