[英]How to deserialize a nested json string using newtonsoft in mvc C#
[英]Deserialize nested(n-level) json to C# objects using Newtonsoft dll
我正在使用一個API,它給了我一個多級JSON,我想將它轉換為C#對象。 任何幫助將不勝感激。
JSON
{
"Categories": [
{
"Code": "2984",
"Name": "Baby",
"Children": [
{
"Code": "100978",
"Name": "Christening & Gifts",
"Children": [
{
"Code": "100980",
"Name": "Baby Jewellery"
},
{
"Code": "100981",
"Name": "Ornaments"
},
{
"Code": "121628",
"Name": "Gift Baskets"
},
{
"Code": "139760",
"Name": "Christening",
"Children": [
{
"Code": "100979",
"Name": "Gifts"
},
{
"Code": "139764",
"Name": "Silverware"
},
{
"Code": "139765",
"Name": "Other Christening"
}
]
},
{
"Code": "32871",
"Name": "Other Gifts"
}
]
},
{
"Code": "100982",
"Name": "Baby Carriers/Backpacks"
},
{
"Code": "1261",
"Name": "Other Baby"
},
{
"Code": "134282",
"Name": "Walkers"
}
}]
}
首先,Json字符串無效。 它缺少第一類兒童的陣列終止字符。 字符串應該像這樣結束:
}]
}]
}
修復此錯誤后,您可以使用與字符串結構匹配的任何類,例如:
class MyRoot
{
public Node[] Categories {get;set;}
}
class Node
{
public string Code{get;set;}
public string Name {get;set;}
public Node[] Children{get;set;}
}
var myRoot=JsonConvert.DeserializeObject<MyRoot>(someString);
Console.WriteLine(myroot.Categories[0].Children[3].Name);
------
Walkers
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.