【发布时间】:2018-09-23 21:10:31
【问题描述】:
我将此发布到 ASP.net Core 操作...
{
"Start":"2018-09-30T00:00:00+00:00",
"Finish":"2018-10-01T00:00:00+00:00"
}
它模型绑定到两个 Date? 属性,但值是相同的日期,但时间是凌晨 1 点。
为什么会这样?它似乎只在“+00:00”出现时才会这样做,所以我猜这代表格林威治时间,服务器目前在夏季时间为 +1。
【问题讨论】:
-
嗨,Ian,我假设您使用的是自定义模型绑定器;你能把解析这些的代码贴出来吗?
-
我没有使用自定义模型绑定器。我认为正在运行的是用于日期的标准 ASP.net Core 模型绑定器。
-
我担心你会这么说......老实说,你最好将日期作为字符串传递给你的控制器并在代码中解析它们。
-
如果在生成 JSON 时将“+00:00”替换为空字符串,似乎可以正常工作。使用带有 Newtonsoft JSON 的自定义序列化程序可能是一种安全的方法。
-
您可以尝试的另一件事是将模型属性类型更改为 DateTimeOffset 而不是 DateTime
标签: asp.net-core