如何使用 JsonConvert 对复杂对象进行反序列化



我想反序列化一个jsonData

杰森:

{
  "$id":"1",
  "Success":true,
  "Message":[],
  "Data: [
    {
      "$id":"2",
      "ID":1,
      "StudentCount":"30",
      "Boys":"15",
      "Girls":"15",
      "EntryDate":"2013-06-12T00:00:00"
    }
  ]
}

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

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

类:

public class Outcome
{
     public bool Success { get; set; }
     public List<string> Message { get; set; }
     public object Data { get; set; }
     public Outcome()
     {
        Message = new List<string>();
     }
}

我无法反序列化对象:public object Data { get; set; }

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

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

dynamic oc = JsonConvert.Deserialize(json);

相关内容

  • 没有找到相关文章

最新更新