我有一个 json 字符串,需要转换为 JObject。
例子:
String result = ""{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Municipio__c","url":"/services/data/v37.0/sobjects/Municipio__c/a0V2C000000gIgzUAE"},"Id":"a0V2C000000gIgzUAE","LastModifiedDate":"2017-08-01T18:12:04.000+0000"}]}";"
var json = JObject.Parse(result);
Run Code Online (Sandbox Code Playgroud)
但是在转换的那一刻,LastModifiedDate已将值更改为我的Time Zone。
像那样:
{{
"totalSize": 1,
"done": true,
"records": [
{
"attributes": {
"type": "Municipio__c",
"url": "/services/data/v37.0/sobjects/Municipio__c/a0V2C000000gIgzUAE"
},
"Id": "a0V2C000000gIgzUAE",
"LastModifiedDate": "2017-08-01T15:12:04-03:00"
}
]
}}
Run Code Online (Sandbox Code Playgroud)
时间更改为:18 : 12 : 04 (hh:MM:ss) 到15:12:04 (hh:MM:ss)。
有没有办法忽略解析时的时区?
您必须使用JsonConvert适当的DateTimeZoneHandling:
var json = JsonConvert.DeserializeObject
( result
, new JsonSerializerSettings()
{ DateTimeZoneHandling = DateTimeZoneHandling.Utc
}
);
Run Code Online (Sandbox Code Playgroud)