【发布时间】:2021-05-04 04:11:08
【问题描述】:
所以我尝试使用 Newtonsoft 将数组从 JSON 反序列化为 C# 类。我已经看过有关此的教程和其他问题,但我遇到了问题,因为我想要获取的数组不在 JSON 的顶层。 JSON 的结构是这样的,我想在其中提取“数据”数组并对其进行反序列化:
"success": true,
"data": [
{
"key": "americanfootball_nfl",
"active": true,
"group": "American Football",
"details": "US Football",
"title": "NFL",
"has_outrights": false
},
{
"key": "aussierules_afl",
"active": true,
"group": "Aussie Rules",
"details": "Aussie Football",
"title": "AFL",
"has_outrights": false
},
{
"key": "basketball_euroleague",
"active": true,
"group": "Basketball",
"details": "Basketball Euroleague",
"title": "Basketball Euroleague",
"has_outrights": false
}
]}
我知道我首先需要从 JSON 中提取数据对象,然后对其进行解析,但我不太确定如何进行。我有这个类来反序列化 JSON:
public class SportsModel
{
public bool Success { get; set; }
public string Data { get; set; }
}
public class SportsData
{
public string Key { get; set; }
public bool Active { get; set; }
public string Group { get; set; }
public string Details { get; set; }
public string Title { get; set; }
public bool HasOutrights { get; set; }
}
目前使用此方法获取顶级数据:
SportsModel data = JsonConvert.DeserializeObject<SportsModel>(response);
我想把JSON数组数据放到一个列表对象中,这样我就可以全部访问了
【问题讨论】:
标签: c# arrays json api json.net