在类中反序列化的API响应

时间:2018-07-14 04:21:36

标签: c# json

我给了我API响应,请提供有关如何使用反序列化设置类中数据的帮助

{
"result": [
{
"encabezado": {
"resultado": "true",
"imensaje": "",
"mensaje": "",
"tiempo": "28"
},
"respuesta": {
"datos": {
"crear": "true"
}
}
}
]
}

您可以帮忙设置课程吗

我正在像这样使用它:

var json = "{'result': " +
            "[{'encabezado': " +
            "{'resultado': 'true','imensaje': '','mensaje': '','tiempo': '28'}," +
            "'respuesta': " +
            "{'datos': {'crear': 'true'}}}]}";

result info = JsonConvert.DeserializeObject(json);


public class encabezado
    {
        public string resultado { get; set; }
        public string imensaje { get; set; }
        public string mensaje { get; set; }
        public string tiempo { get; set; }
    }
    public class datos
    {
        public string crear { get; set; }
    }

    public class result
    {
        public encabezado encabezado { get; set; }
        public datos respuesta { get; set; }
    }

1 个答案:

答案 0 :(得分:4)

假设您正在使用Json.NET,请使用以下类结构:

    public class RootObject
    {
        public Result[] result { get; set; }
    }

    public class Result
    {
        public Encabezado encabezado { get; set; }
        public Respuesta respuesta { get; set; }
    }

    public class Encabezado
    {
        public string resultado { get; set; }
        public string imensaje { get; set; }
        public string mensaje { get; set; }
        public string tiempo { get; set; }
    }

    public class Respuesta
    {
        public Datos datos { get; set; }
    }

    public class Datos
    {
        public string crear { get; set; }
    }

要反序列化:

    var json = "{'result': [{'encabezado': {'resultado': 'true','imensaje': '','mensaje': '','tiempo': '28'},'respuesta': {'datos': {'crear': 'true'}}}]}";
    RootObject info = JsonConvert.DeserializeObject<RootObject>(json);

提示:在Visual Studio中,您可以复制JSON并转到Edit > Paste Special > Paste JSON As Classes,它将自动为您生成类。