0

我正在尝试解析这个 json 脚本。

{
    "Component1": {
        "Parameter1": "A",
        "Parameter2": "12.00"
    },
    "Component2": {
        "Parameter1": "B",
        "Parameter2": "13.00"
    },
    "Component3": {
        "Parameter1": "C",
        "Parameter2": "14.00"
    },
    "Component4": {
        "Parameter1": "D",
        "Parameter2": "15.00"
    },
    "Component5": {
        "Parameter1": "E",
        "Parameter2": "16.00"
    },
    "Component6": {
        "Parameter1": "F",
        "Parameter2": "17.00"
    },
    "Component7": {
        "Parameter1": "G",
        "Parameter2": "18.00"
    },
    "Component8": {
        "Parameter1": "H",
        "Parameter2": "17.00"
    },
    "Component9": {
        "Parameter1": "I",
        "Parameter2": "17.00"
    },
    "Component10": {
        "Parameter1": "J",
        "Parameter2": "17.00"
    },
    "Component11": {
        "Parameter1": "K",
        "Parameter2": "18.00"
    }
}

现在该组件有 2 个值。关于该片段的奇怪之处在于该组件没有标签,但它的值有一个标签,并且每个组件在 gridview 中由一个图块表示。

我可以使用 switch 解析参数 1 和参数 2,但是如何在没有标签的情况下解析组件名称?

4

1 回答 1

1

您可以使用Web 扩展和 JavaScriptSerializer 将其转换为类型(字符串,动态)的字典,因此基本上您将获得 KeyValuePair< string,dynamic> 的列表,您可以这样做:

foreach(KeyValuePair<string, dynamic> kvp in deserializedDictionary)
{
    kvp.Key //this is your "ComponentX"
    kvp.Value.Parameter1 //this is the value in Parameter1
    kvp.Value.Parameter2 //this is the value in Parameter2
}

然后你可以对他们做任何你想做的事情。

于 2013-05-09T00:21:05.713 回答