首页 > 解决方案 > 反序列化嵌套的json数据c#

问题描述

我正在使用 javascriptserializer 反序列化 json 数据。我被困在如何解析这些数据并将值分配给变量。

json:

  {
    "data1": {
"EntityList": "Attribute",
"KeyName": "AkeyName",
"Value": "Avalue"
    },
    "data2": {
        "Id": "jsdksjkjdiejkwp12193jdmsldm",
        "Status": "OK"
    }
}

我需要将 data1 中的 EntityList、KeyName 的值分配给一个变量。我将这个 json 字符串读入变量数据

C#:

var data = "json string"; //variable with json string
JavaScriptSerializer jss = new JavaScriptSerializer();
dynamic drecord = jss.Deserialize<dynamic>(data);

我正在尝试将此嵌套的 json 解析为 2 个变量 EntityList 和 KeyName。

标签: c#jsonjavascriptserializer

解决方案


如果我理解你是正确的,那么它一定是这样的:

        JavaScriptSerializer jss = new JavaScriptSerializer();
        dynamic record = jss.Deserialize<dynamic>(data);
        var data1 = record["data1"];

        var entityList = data1["EntityList"];
        var keyName = data1["KeyName"];

推荐阅读