在JSON.NET中展平嵌套的JSON对象

时间:2015-06-18 13:53:34

标签: c# json.net

我有一个像这样的简单JSON:

{
    "id": 123,
    "name": "BaseName",
    "variation": { "name": "VariationName" }
}

有没有一种简单的方法可以将它与JSON.NET反序列化映射到:

class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string VariationName { get; set; }
}

我可以使用自定义转换器来完成它,但是我希望通过使用属性来注释类的更简单的方法,这些属性将提供仅使用一个属性反序列化变体对象的指令。

1 个答案:

答案 0 :(得分:2)

您可以为variation设置一个班级,并使VariationName成为一个只用属性

class Product
{
    public int Id { get; set; }
    public string Name { get; set; }

    public Variation variation { get; set; }
    public string VariationName { get { return variation.VariationName; } }
}

class variation 
{
    public string name { get; set; }
}