【发布时间】:2016-04-15 23:58:06
【问题描述】:
我有一个带有嵌套对象的 JSON 数组,代表一个菜单,如下所示:
[
[
{
"name": "Item 1",
"id": 1
},
{
"name": "Item 2",
"id": 2,
"children": [
[
{
"name": "Item 21",
"id": 21
}
]
]
},
{
"name": "Item 3",
"id": 3,
"children": [
[
{
"name": "Item 31",
"id": 31,
"children": [
[
{
"name": "Item 311",
"id": 311
},
{
"name": "Item 312",
"id": 312
}
]
]
},
{
"name": "Item 32",
"id": 32
},
...
我想使用 JavaScriptSerializer 反序列化它。我有一些代码如下所示,但不工作。
var serializer = new JavaScriptSerializer();
var objects = serializer.Deserialize<Menu>(jsonData);
...
public class Menu
{
public int id { get; set; }
public string name { get; set; }
public Menu[] children { get; set; }
}
我得到的错误是“不支持'Menu' 类型来反序列化矩阵”。 对于如何声明自定义对象,我将不胜感激。
干杯。
【问题讨论】:
-
菜单是一个html列表,然后序列化为JSON数组
标签: c# asp.net json json-deserialization javascriptserializer