【问题标题】:c# json deserialization complex objectsc# json反序列化复杂对象
【发布时间】:2020-03-19 14:13:04
【问题描述】:

我在反序列化 json 文件时遇到问题,这是 json:

[
    {
        "id": "id", 
        "number": "48", 
        "date": "17-01-2020",
        "details": [
            {
                "id": "id",
                "code": "code",
                "description": "desc"
            },
            {
                "id": "id",
                "code": "code",
                "description": "desc"

            }
        ],
        "address": "add",
        "note": null 
    },
    {
        "id": "id",
        "number": "55",
        "date": "17-01-2020",
        "details": [
            {
                "id": "id",
                "code": "code",
                "description": "desc"
            },
            {
                "id": "id",
                "code": "code",
                "description": "desc"
            }
        ],
        "address": "add",
        "note": null
    }
]

这是我的代码:

 var result = httpClient.GetAsync(".....").Result;
 List<Docu> doc= new JavaScriptSerializer().Deserialize<List<Docu>>(result.Content.ReadAsStringAsync().Result);

类Docu包含id、数字、日期、详细信息的定义和:

public List<Details> det{ get; set; }

类详细信息包含id、代码和描述定义

我可以反序列化除复杂对象细节之外的所有内容,它从反序列化返回 null,我该如何解决这个问题?我需要填写详细信息列表

【问题讨论】:

  • 你能告诉我们完整的课程吗?也许有些属性只有getter,这是一个常见的问题,你需要同时拥有getter和setter

标签: c# json deserialization json-deserialization


【解决方案1】:

List&lt;Details&gt; 属性的名称错误

应该是

public List<Details> details{ get; set; }

根据你显示的json

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-20
    • 1970-01-01
    • 2021-09-23
    • 2018-10-27
    • 1970-01-01
    相关资源
    最近更新 更多