【发布时间】:2016-04-12 18:57:25
【问题描述】:
我不知道如何将以下 json 解析为强类型对象。
JSON:
{
"data": {
"71161": {
"air_by_date": 0,
"anime": 0,
"cache": {
"banner": 1,
"poster": 1
},
"indexerid": 71161,
"language": "en",
"network": "CBS",
"next_ep_airdate": "",
"paused": 0,
"quality": "SD",
"show_name": "name",
"sports": 0,
"status": "Ended",
"subtitles": 0,
"tvdbid": 71161
},
"71211": {
"air_by_date": 0,
"anime": 0,
"cache": {
"banner": 1,
"poster": 1
},
"indexerid": 71211,
"language": "en",
"network": "ABC (US)",
"next_ep_airdate": "",
"paused": 0,
"quality": "SD",
"show_name": "name2",
"sports": 0,
"status": "Ended",
"subtitles": 0,
"tvdbid": 71211
},
}
问题是数字 71161 对于每个 JSON 响应可能不同。
【问题讨论】:
-
如果你使用 JSON.parse(your_json_string); 会发生什么
-
@pantuofermo Json 是有效的并且会解析。但是如何将它变成强类型对象呢?
-
您必须将
data定义为Dictionary<string, YourObjectData> -
哦,我明白你的意思了。我认为您想使用 Newtonsoft 的流行 Json.NET 库。您可以使用 nuget 下载它。引用该库后,您可以通过执行以下操作将 json 字符串转换为强类型对象:Movie m = JsonConvert.DeserializeObject
(jsonString); -
连同 haim770 指出的内容和我的解决方案,这应该可以满足您的需求。
标签: c# json serialization json.net