Ich habe ein JSON-Array mit verschachtelten Objekten, ein Menü darstellt, wie folgt aus:Deserialize verschachtelte JSON-Array in C#
[
[
{
"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
},
...
Und ich will es deserialisieren JavaScriptSerializer verwenden. Ich habe einen Code wie unten gezeigt, funktioniert aber nicht.
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; }
}
Der Fehler, den ich bekomme, ist "Der Typ 'Menü' wird nicht unterstützt, um eine Matrix zu deserialisieren". Ich würde jede Hilfe bei der Deklaration des benutzerdefinierten Objekts zu schätzen wissen.
Prost.
Das Menü ist ein HTML-Liste, die dann als JSON-Array serialisiert wird – Carlos