【问题标题】:How to derserialize complex object using JsonConvert如何使用 JsonConvert 反序列化复杂对象
【发布时间】:2014-05-20 16:25:44
【问题描述】:

我想反序列化一个jsonData,我会把我得到的类和json数据放在这里。

这是 Json:

{ "$id":"1", “成功”:真, “信息”:[], “数据: [ { "$id":"2", “身份证”:1, "学生人数":"30", “男孩”:“15”, “女孩”:“15”, "输入日期":"2013-06-12T00:00:00" } ] }

这是我写的反序列化。我没有收到任何错误 但显示与json相同的数据

WebClient wc = new WebClient(); string json = wc.DownloadString("http://localhost:43293/api/Common"); var oc = JsonConvert.DeserializeObject(json);

这是课程:

公开课成果 { 公共布尔成功{得到;放; } 公共列表消息 { 获取;放; } 公共对象数据 { 获取;放; } 公共结果() { 消息 = 新列表(); } }

【问题讨论】:

  • 好的...你有什么问题?
  • 我无法反序列化对象 public object Data { get;放; },

标签: json.net


【解决方案1】:

问题是您的 Json 对象 Data 无法反序列化为 C# 类型 object 的实例,因为您没有提供为 $id, ID, StudentCount, ... 提供属性的具体类

尝试为您的属性 Data 引入具体类或反序列化为动态对象:

dynamic oc = JsonConvert.Deserialize(json);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多