Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi JsonToObjekt mit TList (https://www.delphipraxis.net/204519-jsontoobjekt-mit-tlist.html)

Maliko 3. Jun 2020 14:21

JsonToObjekt mit TList
 
Moin,

ich bin momentan dabei ne Schnittstelle zu schreiben und möchte gerne das JSON in ein Objekt umwandeln um dieses bequemer verwenden zu können. Dazu verwende ich folgenden Code:

Delphi-Quellcode:
function TPrincipleService.acceptPrinciple(aPrinciple: TJSONObject): String;
var mPrinciple : TPrinciple;
begin
  mPrinciple := TJson.JsonToObject<TPrinciple>(aPrinciple);
end;
Das funktioniert auch einwandfrei, solange in der Klasse keine komplexen Datentypen vorhanden sind. Sobald aber wie in meinem Fall z.B. eine TList verwendet wird um die Geschäftsführer zu verwalten, bekomme ich vom Server folgende Fehlermeldung:

Zitat:

{"error":"Wert f\u00FCr Feld Geschaeftsfuehrer kann nicht gesetzt werden; Array anstatt TList<onLogistPrincipleGeschaeftsfuehrer.TOnLogist PrincipleGeschaeftsfuehrer> erwartet"}
Hat von euch vielleicht jemand eine Ahnung wie ich vorgehen muss um dem System zu sagen dass er das ganze in eine TList schmeißen soll?

Vielen Dank schon einmal im Vorraus.

Viele Grüße
Maliko

EDIT: Hier übrigens auch der JSON-String den ich reinschmeiße:

Zitat:

{
"Principalid" : "on999999",
"Name1" : "Dreamline GmbH & Co. KG",
"Name2" : "",
"Name3" : "",
"Anrede" : "i",
"Strasse" : "Kirchbachstr. 5",
"PLZ" : "28213",
"Ort" : "Bremen",
"Land" : "DE",
"EMail" : "name@mail.de",
"Telefon" : "0176/55266999",
"Geschaeftsfuehrer" : [{
"Vorname" : "Johann",
"Nachname" : "Droggelbecher"
}]
}

Uwe Raabe 3. Jun 2020 14:26

AW: JsonToObjekt mit TList
 
Vielleicht hilft das weiter: Serializing Generic Object Lists with TJson


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz