从外部JSON文件反序列化复杂JSon

时间:2016-10-11 00:08:09

标签: json nested json.net

我是JSON的新手,并试图找出问题所在。我能够反序列化一个简单的JSON对象/数组,但是当JSON对象嵌套了JSON时,它失败并出现以下错误:

  

Newtonsoft.Json.Linq.Jobject to   System.Collections.Generic.Dictionary

P.S:我不知道传递给.NET程序的JSON结构,所以我反序列化了JSON并将其分配给动态.NET对象。像

这样的东西
dynamic test = JsonConvert.Deserialize<object>(json);

并循环遍历测试对象,然后将其分配给Dictionary<string,Object>项目

解决嵌套JSON反序列化的任何提示或建议

1 个答案:

答案 0 :(得分:0)

您需要一些代表您的JSON结构的类:

public class Rootobject
{
    public List<Student> Students { get; set; }
}

public class Student
{
    public string Name { get; set; }
    public string Major { get; set; }
}

然后,您可以将JSON反序列化为RootObject的对象:

var students = JsonConvert.DeserializeObject<RootObject>(json);