c# - ASP.NET Core 日期时间 - ToLocalTime 与 ConvertTime

标签 c# .net-core

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

最佳答案

这两种方法应该都能正常工作,我认为没有哪一种比另一种更正确。

它们在标准用法上最明显的区别是 System.DateTime.ToLocalTime() 使用系统提供的本地时区,而 TimeZoneInfo.ConvertTime() 使用无论你给它什么时区(例如,你硬编码 CET)。

在这两种情况下,您都应该注意 Kind 属性,它有时会毁了您的一天。

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

关于c# - ASP.NET Core 日期时间 - ToLocalTime 与 ConvertTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45055004/

相关文章:

c# - 通过命令行构建 .NET Core 应用程序,以便它可以在没有安装 .NET Core 的机器上运行

c# - IIS7 : Why can't i Choose v3. 5 .net 框架?

c# - 使用逗号和点将 float 转换为字符串

c# - 文件 security.config.cch 对 CLR 有何作用?

c# - 我应该如何在 MVC Core 中管理 DbContext 生命周期?

c# - 如何从 .NET Core 中的流加载程序集

c# - ASP.NET MVC NerdDinner 教程问题

c# - 我们可以从filestream中获取文件的创建时间和日期吗?

node.js - 如何在Windows 10中修复 'rimraf is not a recognized command'

.net-core - 如何处理内存中的Excel文件?