[英]Read and save unknown key value pair in JSON
我正在進行API調用。 成功完成后,我知道JSON響應的結構。 我可以使用JSON.NET將其讀取並保存在數據庫中,但如果API調用生成錯誤,則會生成未知結構的JSON。 我必須解析並將其保存在DB中。 我怎樣才能做到這一點。
在錯誤響應的一般結構是這樣的:
{"origin-of_error":"error_message"}
在某些情況下,還存在其他鍵值。
由於您不知道JSON的確切內容,但至少知道它是具有鍵值對的扁平對象,因此我建議將反序列化為Dictionary<string, string>
。 然后,您可以輕松地迭代鍵值對,以提取需要存儲在數據庫中的數據。
string json = @"
{
""origin-of_error"" : ""error_message"",
""foo"" : ""bar""
}";
var dict = JsonConvert.DeserializeObject<Dictionary<string, string>>(json);
foreach (KeyValuePair<string, string> kvp in dict)
{
Console.WriteLine(kvp.Key + ": " + kvp.Value);
}
嘗試這個
IDictionary<string, JToken> jsondata = JObject.Parse(json);
foreach (KeyValuePair<string, JToken> innerData in jsondata) {
Console.WriteLine("{0}=> {1}",innerData.Key, innerData.Value.ToString());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.