簡體   English   中英

在JSON中讀取並保存未知鍵值對

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM