如何将 JSON 响应映射到自定义类对象

2023-12-08

我正在使用 C# 调用 APIUnirest.io。我得到以下 JSON 响应(如响应体).

{
    "persons": [{
        "id": "a010",
        "name": "Joe",
        "subjects": [
            "Math",
            "English"
        ]
    },
    {
        "id": "b020",
        "name": "Jill",
        "subjects": [
            "Science",
            "Arts"
        ]
    }]
}

我尝试将其映射到我的自定义类对象,如下所示。

HttpRequest request = Unirest.get(API_V1_URL).header("accept", "application/json");
HttpResponse<string> response = request.asString();
var serializer = new JavaScriptSerializer();
persons = serializer.Deserialize<Persons>(response.Body);

但它总是通过设置穿过人.infos = NULL;

我的定制课程

public class Persons
{
    public PersonInfo[] infos;
}

public class PersonInfo
{
    public string id;
    public string name;
    public string[] subjects;
}

请帮助我如何正确地将此类 JSON 映射到我的 .Net 类对象?


Pass Persons in Deserialize<T>代替Vendors

persons = serializer.Deserialize<Persons>(response.Body);

重命名属性

public PersonInfo[] infos;

To

public PersonInfo[] persons;

此外,我建议您使用自动属性。 IE。

public PersonInfo[] persons{get;set;}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 JSON 响应映射到自定义类对象 的相关文章

随机推荐