我有以下用户可以选择的时区列表,山地标准时间在亚利桑那州有两次。这些都不希望他们在选择时看到。我删除了一个包含所有微软时区的网站列表。如果它为常规州和AZ列出了山地标准时间,我想我很困惑。
夏威夷标准时间
阿拉斯加标准时间
太平洋标准时间
山地标准时间
山地标准时间
中央标准时间
中美洲标准时间
东部标准时间
U.S。东部标准时间
我的问题是我猜这些不考虑DST,所以我假设我需要在转换中添加一些东西来检查并查看它们是否在DST中并相应地进行调整。我现在正在进行转换。
TimeZoneInfo time = TimeZoneInfo.FindSystemTimeZoneById(LocationProvider.GetLocation(LocationID).TimeZone.Name);
return TimeZoneInfo.ConvertTime(DateTime.Now, time);
答案 0 :(得分:2)
是的,TimeZoneInfo
说明了DST,只要你正确使用它(不可否认,这并不容易)。现在还不清楚你为什么要做你正在做的事情......
我知道这个ID实际上是时区的标准 ID令人困惑,但它仍然是一个了解DST的全时区。它不只是意味着“标准时间”。
(如果您对DateTime
et感到沮丧,并且想要Noda Time来满足您的所有日期/时间需求,我很乐意帮忙:)