我需要以下列格式创建JSON结构:
{
"test": [
{
"mode": "2",
"test": "test3"
},
{
"mode": "1",
"test": "test3"
}
]
}
因此,无论何时创建JSON结构,都应将其附加到test元素。
所以最初我只有值:
string json=@"{""testfun"": [ {""mode"": ""2"", ""test"": ""test3"" } ]}";
Dictionary<string, object> objtestnew2 = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(json);
那么当我获得现有字典元素的下一个JSON结构时,如何追加?
答案 0 :(得分:0)
将您的字典创建拆分,并将反序列化拆分为两个不同的步骤。
第一次调用该方法时,应查看字典是否存在,以及是否存在字典。如果它确实存在,那么您可以将反序列化的数据附加到该字典。
答案 1 :(得分:0)
您可以反序列化第二个字典,然后将其合并到第一个字典中。最简单的方法是一个简单的循环:
string json=@"{""testfun"": [ {""mode"": ""2"", ""test"": ""test3"" } ]}";
Dictionary<string, object> dict = (new JavaScriptSerializer()).Deserialize<Dictionary<string, object>>(json);
string json2=@"{""testfun"": [ {""mode"": ""1"", ""test"": ""test3"" } ]}";
Dictionary<string, object> dict2 = (new JavaScriptSerializer()).Deserialize<Dictionary<string, object>>(json2);
// loop through and update/add the items to the first dictionary
foreach(var item in dict2)
dict1[item.Key] = item.Value;