2

我在我的模型中传递 /Date(1337904300000)/ 以受默认 MVC 4 模型绑定器的约束。根据我的计算,这应该是 2012 年 5 月 24 日下午 8:04,但模型绑定器正在制作绑定到 {5/25/2012 12:05:00 AM} 的 DateTime 变量。我在美国东部标准时间,看来它正在花费我发回的时间并添加 4 小时的差异。我该如何设置它,以便只花时间输入并将其保存到模型中?

4

1 回答 1

1

处理时区是一件非常棘手的事情,dotnet 处理日期的方式取决于 DateTimes 的一个名为 TimeKind 的属性,它指定日期是用本地时间还是以绝对时间表示。毋庸置疑,大多数数据源将此枚举设置为未知...因此系统的各个组件做出不同的假设...导致您遇到的各种问题。首先要做的是在向客户端发送任何日期时间之前设置 TimeKind。不幸的是,这不是唯一的问题……还有其他问题。请参考我博客的这篇文章,在这里您可以找到对所有 TimeZone 相关问题的深入分析: Asp.net Mvc 和日期和时区的噩梦

于 2013-01-26T21:36:05.743 回答