Asp.net 将JSON对象反序列化为通用对象列表

Asp.net 将JSON对象反序列化为通用对象列表,asp.net,json,serialization,Asp.net,Json,Serialization,我有一个JSON字符串,如下所示: {"FacilityID":63, "StartDate":"2012-01-01", "EndDate":"2012-07-12", "PrimaryChoices":[{"ItemName":"Employee","ItemID":107}, {"ItemName":"Category","ItemID":104}] } Dim ChartConfig = New JavaScriptSerializer().

我有一个
JSON
字符串,如下所示:

{"FacilityID":63,
 "StartDate":"2012-01-01",
 "EndDate":"2012-07-12",
 "PrimaryChoices":[{"ItemName":"Employee","ItemID":107},
                   {"ItemName":"Category","ItemID":104}]
}
Dim ChartConfig = New JavaScriptSerializer().DeserializeObject(JSONString)
这个JSON字符串是“通用的”。它不会被解析为强类型对象,但我需要一个通用的
字典(字符串,对象)

当我执行这样的命令时:

{"FacilityID":63,
 "StartDate":"2012-01-01",
 "EndDate":"2012-07-12",
 "PrimaryChoices":[{"ItemName":"Employee","ItemID":107},
                   {"ItemName":"Category","ItemID":104}]
}
Dim ChartConfig = New JavaScriptSerializer().DeserializeObject(JSONString)

我得到了预期的字典,但PrimaryChoices项没有正确地反序列化这两个ItemName项。这可能吗?

对我来说很有效。
PrimaryChoices
属性被正确反序列化为2个对象的数组;每个都包含一个
字典
,其中包含两个元素,键为itemName和ItemID。我将放弃。我试图将JSON解析为泛型,但这太麻烦了。相反,我创建了一个强类型类,并使用Newton.JSON工具:JsonConvert.DeserializeObject(ReportParameters的一部分)(result.ReportConfiguration),其中ReportConfiguration是我的JSON字符串,ReportParameters是我的新公共类。