处理UTC和夏令时的最佳方式
本文关键字:最佳 方式 夏令时 UTC 处理 | 更新日期: 2023-09-27 17:48:48
处理UTC转换和夏令时转换的最佳方法是什么。问题和解决方案是什么。全部在C#.Net 2.0中。以及.Net 2.0中存在的任何问题。
如果您使用UTC时间,您不必担心客户端的时区或夏令时。。。(如果他们设定了标准)
如果您在任何地方都使用UTC,那么使用.NET确实不需要太担心。如果您有兴趣看到这类内容的实际应用,可以查看TimeZoneInfo类。
我建议将应用程序和数据库中的所有日期时间条目标准化为UTC。然后,您可以让用户选择他们时区的首选项,并将其存储为偏移量(例如,东部时间为-5),或者在向用户显示时间时使用客户端机器的本地化设置。
不要试图自己计算夏令时。每个客户端的情况不同。你不能真的假设夏令时规则是基于世界上所有不同规则的时区。请交给CLR供应商(即Microsoft)。所有事件都坚持UTC(但请记住,午夜与时间有关,因此日期也与时间有关)
在这种特殊情况下,我将把当地时间转换为UTC。但我在某个地方读到夏令时规则最近发生了变化。Sooo使Date.ToUniversalTime()函数仍然正常工作。基本上,2007年之前(新规则生效时)的日期会被正确转换,但之后的日期不会。我就在这里吗?
@Xardas
我认为夏令时是在最近的补丁中更新的(就像几个月前一样)。如果你的系统打了补丁,你就不必担心了。