繁体   English   中英

使用RestSharp反序列化嵌套的JSON数组

[英]Deserialize nested JSON array using RestSharp

具有以下json数组:

[{
"Name": "Component1",
"Count": 2,
"Bulletins": [{
    "ReferenceNumber": "00000A57",
    "Title": "Test test test",
    "PublicationDate": "2014-07-02",
    "List": ["00000A57"]
},
{
    "ReferenceNumber": "10V240000",
    "Title": "Bla bla bla",
    "PublicationDate": "2010-06-04",
    "List": ["10V240000"]
}]
},
{
"Name": "Component2",
"Count": 2,
"Bulletins": [{
    "ReferenceNumber": "00-00-0A-57",
    "Title": "INFORMATION REGARDING BLA BLA",
    "PublicationDate": "2015-05-22",
    "List": ["15-00-89-004",
    "15-00-89-004A"]
},
{
    "ReferenceNumber": "01-02-0B-57",
    "Title": "UNSCHEDULED SUPPLEMENTAL SERVICES",
    "PublicationDate": "2012-09-28",
    "List": ["04-06-01-029",
    "04-26-51-029",
    "04-26-51-029",
    "04-26-51-029",
    "04-26-51-029",
    "04-26-51-029",
    "04-26-51-029"]
}]
}]

我正在使用以下代码来检索NameCount值:

public class BulletinsItemsName
{
    public string Name { get; set; }
    public string Count { get; set; }
    public List<BulletinsContainer> blt { get; set; }
}

public class BulletinsContainer
{
    public Bulletins Bulletins;
}

public class Bulletins
{
    public string ReferenceNumber { get; set; }
    public string Title { get; set; }
    public string PublicationDate { get; set; }
    public string SupersededList { get; set; }
}

要运行请求,我有:

var req = request.Execute<List<BulletinsItemsName>>(parameters);

并列出值:

foreach(var xx in req.Data)
{
    Console.WriteLine(xx.Name); 
    foreach(var yz in xx.blt) // Object reference not set to an instance of an object
     {
         Console.WriteLine(yz.Bulletins.Title);
     }
}

如何获取以下值: ReferenceNumberTitlePublicationDateList 所有值都正确返回了NameCount但是当我想获取Bulletins值时,将引发以下错误: Object reference not set to an instance of an object

尝试使用Bulletins列表而不是BulletinsContainer-对我来说这是清晨,但是我不明白为什么您需要BulletinsContainer

public List<Bulletins> blt { get; set; }

如果可能,我还建议您以单数形式命名类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM