c# – 将UTC DateTime转换为本地DateTime
发布时间:2020-12-15 17:49:24 所属栏目:百科 来源:网络整理
导读:我有以下ASP.Net MVC控制器方法: public ActionResult DoSomething(DateTime utcDate){ var localTime = utcDate.ToLocalTime();} 问题是localTime将具有与utcDate完全相同的值.我假设这是因为utcDate不知道它有一个UTC值.所以我的问题是如何将utcDate(我知
我有以下ASP.Net MVC控制器方法:
public ActionResult DoSomething(DateTime utcDate) { var localTime = utcDate.ToLocalTime(); } 问题是localTime将具有与utcDate完全相同的值.我假设这是因为utcDate不知道它有一个UTC值.所以我的问题是如何将utcDate(我知道是UTC)转换为本地? 解决方法
如果您知道DateTime包含UTC值,则可以使用
the following:
DateTime iKnowThisIsUtc = whatever; DateTime runtimeKnowsThisIsUtc = DateTime.SpecifyKind( iKnowThisIsUtc,DateTimeKind.Utc); DateTime localVersion = runtimeKnowsThisIsUtc.ToLocalTime(); 例如,在我当前的应用程序中,我使用SQL的utcnow在数据库中创建时间戳,但是当我将它们读入到我的C#应用??程序中时,该类型的始终始终是未知的.我创建了一个包装器函数来读取时间戳,故意将其设置为Utc,然后将其转换为本地时间 – 基本上如上. 请注意,如果以下(或两者)中的一个(或两者)成立,则 > DateTime’s Kind属性是DateTimeKind.Local 我想我们可以假设第二点是不正确的.因此,似乎iKnowThisIsUtc的亲属属性已设置为本地.你需要弄清楚为什么为什么提供这些DateTimes认为他们是本地的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |