2016-07-21 12 views
0

Ich habe eine JSON-Zeichenfolge, die ich versuche, in eine Objektliste mit Newton zu deserialisieren. Aber es gibt dieDeserialize JSON-Objektliste mit Newton in C#

Fehler nicht mit dem aktuellen JSON-Objekt deserialisieren (zB { "name": "Wert"}) in den Typ ‚System.Collections.Generic.List

Das Format der Json String ist.

[ { "key": "1", "value": "Package1" }, { "key": "some name", "value": "Package2" } ] 

das Modell ist definiert als

public class RootObject 
{ 
    public string key { get; set; } 
    public string value { get; set; } 
} 

und ich bin mit dem folgenden Verfahren es deserialisieren, wo json die Zeichenfolge oben aufgeführt ist.

var resultList = JsonConvert.DeserializeObject<List<RootObject>>(json); 

Ich bin nicht sicher, wo ich falsch hier gehe, würde jede Hilfe dankbar.

+7

Sind Sie sicher, dass dies der JSON-Text ist, den Sie an die Deserialize-Methode übergeben? Weil es für mich vollkommen in Ordnung sein sollte. Können Sie 'json'-Objekte in die Konsole ausgeben und hier einfügen? – user3185569

+3

Haben Sie die Zitate nicht gefunden? 'var jsonData =" [{\ "key \": \ "1 \", \ "value \": \ "Package1 \"}, {\ "key \": \ "name \", \ \ value \ ": \" Package2 \ "}]"; ' –

+4

was Sie haben scheint in Geige gut zu funktionieren: https://dotnetfiddle.net/CvKGau – solidau

Antwort

1

Versuchen Sie, IDictionary anstelle von List zu geben.