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

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

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

我假设 ASP.NET MVC 会进行这种转换。真的吗?如果是这样,我该如何防止它,并强制将日期原封不动地传递下去?

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

最佳答案

如果您将值存储为 UTC 并将其发送为 UTC,则 Web 服务器的时钟不会起作用。您需要检查如何从数据库中设置该日期,如果这很好,则检查 JavaScript 中发生的转换。

此外,如果您正在执行任何 .ToString() 或使用 HtmlHelpers,它们也可以即时转换。

关于asp.net - 如何防止 ASP.NET MVC 将日期从 UTC 转换为本地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7815586/

相关文章:

c# - 只读文本框的服务器验证 - 防止输入值

c# - 如何替换 "Error. An error occurred while processing your request."

c# - 共享项目和资源文件

java - 像IDM一样自动抓取下载链接?

c# - 如果 AutoCompleteExtender 未返回任何结果,则重置 HiddenField

c# - 使用 Datetime 按 ID 获取列表最后一个元素的最快方法是什么?

Pandas timestamp 和 python datetime 对时区的解释不同

php - 从日期时间列获取数据

c# - ASP.net 健康监控是否与 asmx web 服务一起工作

jquery - firefox 自动完成 'enter' 自动完成按键触发文本框输入