【发布时间】:2018-03-07 04:58:06
【问题描述】:
我在将 EWS 约会的开始时间 DateTime 从本地时间转换为 UTC 时遇到问题。从 EWS,我得到了约会的 DateTime 和 TimeZone。我一直在使用.ToUniversalTime() 将DateTime 转换为UTC。
但是,当当前时间和约会的开始时间在夏令时的不同边时(例如,开始 DateTime 可能是 2018 年 3 月 15 日),.ToUniversalTime() 转换使用 current UTC 偏移量,导致 DateTime 偏移一小时。
我需要某种方法来获取未来某个日期的 UTC 偏移量。
我最好的计划是使用.ToUniversalTime() 来获得正确的UTC 开始时间DateTime 的近似值。大多数情况下,这将是正确的 UTC 转换,如果不是,它将接近。从理论上讲,我应该能够在这个估计的 UTC 时间获得预测的 UTC 偏移量,并将原始开始 DateTime 重新转换为 UTC。
我知道如果在夏令时切换后一小时内开始DateTime,这将失败,但这对我来说已经足够接近了。我将不胜感激任何建议或替代方法,但我真正在寻找的是在未来某个日期获得估计的 UTC 偏移量的某种方法。
【问题讨论】:
标签: c# .net datetime timezone exchangewebservices