相关疑难解决方法(0)

拼合嵌套的Dictionary <string,object>

我正在使用以下内容反序列化一些嵌套的JSON:

string json = @"{
    ""name"": ""charlie"",
    ""someID"": 123,
    ""level1"" : {
        ""name"": ""charlie 1"",
        ""someID"": 456
    }
}";

JavaScriptSerializer serializer = new JavaScriptSerializer();
Dictionary<string, object> data = serializer.Deserialize<Dictionary<string, object>>(json);
Run Code Online (Sandbox Code Playgroud)

完成此操作后,每个字典键的值都可以是另一个字典,依此类推,可以有多个层次。

我想做的是将多级数据展平,因此它只是一个平面Array / List,仅包含所有JSON属性名称及其值。这样我最终得到这样的东西:

name, "charlie"
someID, 123
name, charlie 1
someID, 456
Run Code Online (Sandbox Code Playgroud)

我一直在使用SelectMany()之类的方法,但是无法纠缠它来做我想做的事情。

我一直在徘徊这样的事情:

var obj = data.Values.SelectMany<object, Dictionary<string, object>>(x => x);
Run Code Online (Sandbox Code Playgroud)

但是我不能满足编译器的要求。是的,我迷路了。

我正在使用.NET 3.5。

c# linq .net-3.5

1
推荐指数
1
解决办法
4805
查看次数

标签 统计

.net-3.5 ×1

c# ×1

linq ×1