如何在c#中没有根对象的情况下检索json响应

时间:2016-05-18 08:54:52

标签: c# json

我有以下json字符串:

{
    Syangja : {},
    Tulsipur : {},
    Pokhara : {},
    Butwal : {},
    Madhumalla : {},
    Dhangadhi : {},
    Siddharthanagar(Bhairahawa) : {},
    Banepa : {},
    Bharatpur : {},
    Dharan : {},
    Lalitpur : {},
    Biratnagar : {},
    Dang : {},
    Kathmandu : {
        5 star : {
            median : "141.72",
            lowest : "96.54",
            value : "141.72"
        },
        1 star : {
            median : "36.33",
            lowest : "36.33",
            value : "36.33"
        },
        4 star : {
            median : "53.10",
            lowest : "22.12",
            value : "53.10"
        },
        2 star : {
            median : "21.00",
            lowest : "20.33",
            value : "21.00"
        },
        3 star : {
            median : "25.00",
            lowest : "20.11",
            value : "25.00"
        }
    },
    Bajhang : {},
    Janakpur : {},
    Birganj : {}
}

我想立刻检索这个。我怎么能这样做。我坚持这个,因为它没有根对象,而其他东西是每次对象名称都不同。那么如何让这些城市在C#中分离数组。这意味着kathmandu城市数据到一个数组,Syangja城市数据到一个数组。可能吗?如果有可能,我该怎么做?

1 个答案:

答案 0 :(得分:1)

看起来您提供的JSON示例无效。由于括号, Siddharthanagar(Bhairahawa):{},不会解析为有效的JSON。

话虽如此,如果您使用NewtonSoft对其进行反序列化,那么您作为[Serializable]挂钩的任何对象都将映射到JSON:

var myObject = JsonConvert.Deserialize<MyObject>(yourJsonString);

只要JSON序列化程序可以映射任何字段,那么你就是金色的。