我有以下JSON從Java服務JSON.NET根標籤和反序列化
{"Test":{
"value": 1,
"message": "This is a test"
}}
我有以下的C#類
class Test {
public int value { get; set; }
public String message { get; set; }
}
然而,因爲根標籤「測試」是一個返回返回我不能直接反序列化這與
Test deserializedTest = JsonConvert.DeserializeObject<Test>(jsonString);
我發現我必須包裝在另一個測試類這個班的工作。有沒有一種簡單的方法可以避免這種情況?
JToken root = JObject.Parse(jsonString);
JToken testToken = root["Test"];
Test deserializedTest = JsonConvert.DeserializeObject<Test>(testToken.toString());
最後我還有第二個問題。我調用的大多數服務也可以返回一個Exception對象。我想我會讀取JSON的「根」標記以確定如何反序列化對象。我如何獲得第一個根標籤和/或是否有更好,更優雅的方法來處理服務中的異常?
由於
我認爲這可能實際上很好地工作,如果我使它的通用對象(測試對象)。這是解析一個或其他對象的非常簡單的方法。謝謝 – Shaun