我应该如何正确反序列化这个对象?

How I should deserialized this object correctly?

我使用 API,return 具有某些属性的公司符号集合,但我不知道应该如何反序列化它

{
    "A": {
        "advanced-stats": {
            "prop1": 0.198791,
            "prop2": 16.59,
            "prop3": 12.44,
        }
    },
    "AA": {
        "advanced-stats": {
            "prop1": 0.198791,
            "prop2": 16.59,
            "prop3": 12.44,
        }
    },
    "AAAU": {
        "advanced-stats": {
            "prop1": 0.198791,
            "prop2": 16.59,
            "prop3": 12.44,        
        }
    }
}

您可以使用以下 类 为 JSON 建模:

public class AdvancedStats
{
    public double Prop1 { get; set; }
    public double Prop2 { get; set; }
    public double Prop3 { get; set; }
}

public class AdvancedRoot
{
    [JsonProperty("advanced-stats")]
    public AdvancedStats AdvancedStats { get; set; }
}

由于 JSON 键有不同的名称,您可以将其建模为 Dictionary<string, AdvancedRoot>。然后反序列化(使用Newtonsoft.Json):

var results = JsonConvert.DeserializeObject<Dictionary<string, AdvancedRoot>>(json);

Try it online