【发布时间】:2018-01-12 10:04:04
【问题描述】:
我将 JSON.net 用于 Compact Framework - 版本 3.5r8。引用文件为:Newtonsoft.Json.Compact.dll。
如果我有一个带有 ISO 8601 格式的日期/时间的 JSON 对象,例如:
{
"name": "TestObject",
"timestamp": "2017-08-04T13:39:16+01:00"
}
我使用JsonConvert.DeserializeObject<TestObject>(response) 对其进行反序列化,C# 按预期将时间戳属性解析为 DateTime,但是时间是在上午 05:39 解析的,因此显然存在时区问题,导致解析失败距离 UTC 8 小时。
我很欣赏 JSON.net 的“完整”/最新版本确实有我们可以通过 JsonSerializerSettings 传递的选项来更改日期时区处理,但这些选项似乎都不适用于 JSON.net Compact。
如何使时间戳按预期以 UTC 格式解析?
【问题讨论】:
标签: c# .net json datetime json.net