将UTC DateTime转换为本地时间(CET)的正确方法是什么?我应该使用System.DateTime.ToLocalTime()
还是TimeZoneInfo.ConvertTime()
?有什么不同吗?或者他们只是内部相互调用的两种方法?
答案 0 :(得分:4)
两种方法都应该可以正常工作,我认为任何一种方法都不比另一方更正确。
标准用法中最明显的区别是System.DateTime.ToLocalTime()
使用系统提供的本地时区,而TimeZoneInfo.ConvertTime()
使用您提供的任何时区(例如,您对CET进行硬编码)。
在这两种情况下,你应该注意Kind
财产,这有时会破坏你的一天。
无论如何,您可能需要检查this question,当然还有两种方法的MSDN文档,它们总结了它们的行为。