ASP.NET Core DateTime - ToLocalTime vs ConvertTime

时间:2017-07-12 10:23:03

标签: c# .net-core

将UTC DateTime转换为本地时间(CET)的正确方法是什么?我应该使用System.DateTime.ToLocalTime()还是TimeZoneInfo.ConvertTime()?有什么不同吗?或者他们只是内部相互调用的两种方法?

1 个答案:

答案 0 :(得分:4)

两种方法都应该可以正常工作,我认为任何一种方法都不比另一方更正确。

标准用法中最明显的区别是System.DateTime.ToLocalTime()使用系统提供的本地时区,而TimeZoneInfo.ConvertTime()使用您提供的任何时区(例如,您对CET进行硬编码)。

在这两种情况下,你应该注意Kind财产,这有时会破坏你的一天。

无论如何,您可能需要检查this question,当然还有两种方法的MSDN文档,它们总结了它们的行为。