0
是否有反序列化無效json的方法?newtonsoft json反序列化錯誤處理:部分反序列化
比如未來JSON反序列化將失敗,JsonReaderException
{
'sessionId': 's0j1',
'commandId': 19,
'options': invalidValue // invalid value
}
因爲options
屬性值是無效的。
有沒有一種很好的方法可以獲得sessionId
和commandId
值,即使options
的值無效?
我知道這是可能的反序列化(http://www.newtonsoft.com/json/help/html/SerializationErrorHandling.htm)期間處理錯誤
var json = "{'sessionId': 's0j1', 'commandId': 19, 'options': invalidValue}";
var settings = new JsonSerializerSettings
{
Error = delegate(object sender, ErrorEventArgs args)
{
args.ErrorContext.Handled = true;
}
});
var result = JsonConvert.DeserializeObject(json, settings);
位將導致result = null
。
我不認爲Json.NET可以處理無效JSON。如果你想解析一些不是Json的東西,請看看[這個答案](http://stackoverflow.com/a/29146482/579895) – Pikoh