如何在C#中将JSON数组(作为字符串)解析为Dictionary <string,string>?</string,string>

时间:2013-01-14 18:59:38

标签: c# arrays json parsing dictionary

我有一个以下格式的字符串:

{ "Updated" : [ { "FIRST_NAME" : "Aaa", "LAST_NAME" : "Bbb" } ] }

如何从中获取字典,以便拨打dict["FIRST_NAME"]

我尝试了以下内容,但我认为它们不起作用,因为我的字符串是JSON 数组?如果是这种情况,我该如何将其更改为常规JSON字符串?我不认为它需要是一个包含简单数据类型的数组......数组的大小永远不会超过1 - 也就是说,没有重复的字段。

Dictionary<string, string> dict = serializer.Deserialize<Dictionary<string, string>>(jsonString); //didn't work

JArray jArray = JArray.Parse(jsonString); //didn't work

2 个答案:

答案 0 :(得分:2)

您所拥有的是一个复杂的对象,可以将其解析为字典数组的字典!

所以你可以解析它:

var dic = serializer.Deserialize<Dictionary<string, Dictionary<string, string>[]>>(jsonString)["Updated"][0];
var firstName = dic["FIRST_NAME"];
var lastName = dic["LAST_NAME"];

答案 1 :(得分:0)

使用动态变量可能更容易。有关详细信息,请参阅Deserialize JSON into C# dynamic object?