如何防止ASP.NET MVC将日期从UTC转换为本地?

时间:2011-10-19 01:24:41

标签: asp.net asp.net-mvc datetime utc

我使用UTC将日期存储在数据库中。客户端(javascript)获取日期并将其转换为本地时间。这在localhost上运行时工作正常(意味着Web服务器时区与客户端时区相同)。但是,当我部署到Azure,其中Web服务器时区是UTC时,我将已经调整的日期恢复到客户端的时区,导致客户端显示错误的日期时间值。

我假设ASP.NET MVC执行此转换。真的吗?如果是这样,我该如何防止它,并强制日期不加改变?

我试图设置传递给DateTimeKind.UnSpecified的日期时间对象的类型,但这不起作用。

1 个答案:

答案 0 :(得分:1)

如果将值存储为UTC并将其作为UTC发送,则Web服务器的时钟不起作用。您需要检查从db中设置日期的方式,如果这样做,那么请检查JavaScript中发生的转换。

此外,如果你正在使用任何.ToString()或使用HtmlHelpers,它们也可以动态转换。