繁体   English   中英

反序列化没有名称的对象的JSON数组时,应用崩溃

[英]App crashes when deserializing JSON array of objects without name

我目前正在使用ListView ,它显示了我们系统的几个过程。 不幸的是,系统仅以以下格式提供json:

[
    {
        "f1": "w1",
        "date": "2018.11.09"        
    },
    {
        "f1": "w2",
        "date": "2018.11.09"
    }
]

如果启动反序列化,我的应用程序将崩溃,我认为原因是该对象没有“描述”。 但是我该如何解决呢?

这是我下载和反序列化json的代码:

using (WebClient client = new WebClient())
{
    client.Encoding = Encoding.UTF8;                       
    json = client.DownloadString("http://x.x.x.x/test.json");
}
return JsonConvert.DeserializeObject<Query>(json);

查询:

public class Query
{
    public List<Process> Processes { get; set; }
}

处理:

public class Process
{
    [JsonProperty("f1")]
    public string f1 { get; set; }
    [JsonProperty("date")]
    public string date { get; set; }
}

这是因为JSON试图按指定将值反序列化为“查询”对象:

{
    "processes" : []
}

当结果为List时,将JsonConvert.DeserializeObject<Query>更改为JsonConvert.DeserializeObject<List<Process>> ,看看是否有帮助:)。

暂无
暂无

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

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