簡體   English   中英

解析動態JSON字符串

[英]Parse Dynamic JSON string

我從服務器獲得JSON響應,但JSON不是一種格式。 所以顯然沒有必要創建類來反序列化它。 所以,我嘗試使用dynamic但我無法閱讀響應。

示例JSON String是

" {"hm_xytrict":"HM Tricky District - oop","hmSD":"HM Pool District"}"

請注意,“hm_xytrict”和“hmSD”每次都會有所不同

我在用

dynamic jsonResponse = JsonConvert.DeserializeObject(responseString);

對於這種特殊情況,我可以使用jsonResponse.hm_xytrictjsonResponse.hmSD但由於它們也是動態的,所以如何在所有情況下讀取jsonResponse

謝謝,哈姆扎

因此,您可以使用JSON.NET api的不同部分來解析和提取對象中的數據:

var jObj = JObject.Parse(json);
foreach (JProperty element in jObj.Children())
{
    string propName = element.Name;
    var propVal = (string)element.Value;
}

更有趣的是,您可以直接將JSON字符串解析為動態對象

string responseString = @"{""hm_xytrict"":""HM Tricky District - oop"",""hmSD"":""HM Pool District""}";

dynamic jsonResponse = JObject.Parse(responseString);
foreach (var item in jsonResponse)
{
    Console.WriteLine(item.Name);
    Console.WriteLine(item.Value);
}

在您的示例中將輸出哪個

hm_xytrict
HM Tricky District - oop
hmSD 
HM Pool District

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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