如何使用restsharp反序列化此JSON格式? (C#)

时间:2017-05-19 19:19:22

标签: c# json restsharp

我的类应该如何,以便我可以反序列化下面的JSON。

{
    "Bob": [{
            "code": "Bob",
            "tier": 1
        },
        {
            "code": "Bob",
            "tier": 2
        }
    ],
    "Joe": [{
            "code": "Joe",
            "tier": 1
        },
        {
            "code": "Joe",
            "tier": 2
    }

    ]
     }      

下面的课程(来自json2csharp.com)有效,但是当我的json有很多不同的名字时,这不会扩展,因为我最终会有100多个课程。

public class Bob
{
    public string code { get; set; }
    public int tier { get; set; }
}

public class Joe
{
    public string code { get; set; }
    public int tier { get; set; }
}

public class RootObject
{
    public List<Bob> Bob { get; set; }
    public List<Joe> Joe { get; set; }
}    

任何建议或想法都会对我有帮助。(我尝试过使用字典和动态列表)

1 个答案:

答案 0 :(得分:1)

如果您不想要JSON的结构,那么您可以尝试使用Dictionary而不是根据其JSON属性名称命名的类。 E.g。

public class Person {
    public string code {get; set; }
    public int tier {get; set; }
}

将JSON反序列化为RootObject而不是Dictionary<string, List<Person>>