JSON mit System.Web.Script.Serialization.JavascriptSerializer deserialisieren - wie geht das?

Hinweis: Ich habe geposteteine ähnliche Frage, das war der Vorläufer dieser Frage, da ich ursprünglich daran gedacht hatte, JSON.NET zum Parsen des JSON zu verwenden, aber ich verwende den eingebauten Deserializer, also ist es eine andere Frage.

Das versuche ich zu tun: Ich habe zum Beispiel eine Klasse namens Item. Der json hat viele "Elemente" (wenn sie so heißen - sie ahmen die Item-Klasse nach) und jedes enthält 3 Felder: eine Ganzzahl mit dem Namen id, eine Zeichenfolge mit dem Namen name und eine Datums- / Uhrzeitangabe mit dem Namen creationTime. Ich möchte all diese Item "Elemente" vom json in eine Liste von Item Objekten zerlegen. Ich habe 3 Felder in der Item-Klasse erstellt, die mit dem JSON übereinstimmen.

Das mache ich gerade:

JavaScriptSerializer ser = new JavaScriptSerializer();          
List<Item> items = ser.Deserialize<Item>(new StreamReader(response.GetResponseStream()).ReadToEnd());

Dies funktioniert jedoch nicht, da ich den Typ "superapi.Item" nicht implizit in "System.Collections.Generic.List" konvertieren kann<superapi.ItemDaher weiß ich nicht, wie ich dieses Problem angehen soll, da es viele Elemente der Item-Architektur in JSON gibt. Ist es irgendwie möglich, dies in einer foreach-Schleife zu tun, um jedes deserialisierte Item in JSON zu finden? Fügen Sie das zur Liste hinzu und setzen Sie die Schleife fort. Ich werde versuchen, genau das mit einem ähnlichen Code zu tun, und ich werde meine Ergebnisse veröffentlichen.

Vielen Dank!

AKTUALISIEREN: So sieht ein Teil des JSON aus:

[{
    "Id": 1,
    "Name": "First item name",
    "creationTime": "\/Date(1247258293690)\/"
},
{
    "Id": 2,
    "Name": "Second item name",
    "creationTime": "\/Date(1247088323430)\/"
}]

So sieht meine Item-Klasse aus:

public class Item
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public DateTime creationTime { get; set; }
    }

Antworten auf die Frage(1)

Ihre Antwort auf die Frage