Ein vorhandener JSON-basierter Web-Service gibt ein ziemlich unordentliches JSON-Objekt zurück, in dem alle nützlichen Daten in den Elementen eines Arrays enthalten sind, das selbst der Inhalt eines Elementarray. So etwas wie dies (ich bin Anonymisierung es hoffentlich keine Tippfehler):Deserialisieren eines inneren Arrays zu Objekten mithilfe von JSON.net
{"rows":[[
{"name":"John","time":"2016-03-20 01:00:00","id":"2","code":"1234"},
{"name":"Sam","time":"2016-03-20 01:00:00","id":"24","code":"999"},
{"name":"Paul","time":"2016-03-20 01:00:00","id":"12","code":"6512"}
]]}
Mit JSON.net Ich brauche jede dieser Reihe Unterelemente zugreifen, aber ich bin nicht sicher, wie über diese zu durchlaufen, und wenn Ich sollte auf einen konkreten Typ deserialisieren oder einfach die Rohdaten von meinem Json-Objekt lesen.
Die Daten werden innerhalb einer Methode aggregiert, so dass der 'Typ' jedes row
nicht etwas ist, das außerhalb der Methode bekannt sein muss.
rows
wird immer ein 1-Element-Array sein, das ein Array von Elementen wie gezeigt enthält.
Danke Brian . Gibt es eine Möglichkeit, dies weiter mit einem anonymen methoden-lokalen Typ zu kombinieren, um zu vermeiden, dass ein konkreter Typ deklariert wird?Oder hat man einfach eine private innere Klasse? –
@ Mr.Boy Ja, Sie können anonyme Typen verwenden. Ich habe meine Antwort bearbeitet, um zu zeigen, wie. Es sollte auch mit einer inneren Klasse funktionieren, wenn Sie diese Route wählen. –
Brilliant, vielen Dank –