Einzelnen Beitrag anzeigen

Incocnito

Registriert seit: 28. Nov 2016
237 Beiträge
 
#9

AW: Erfahrungen mit TJsonSerializer

  Alt 7. Aug 2025, 16:50
Ja, TJsonMemberSerialization.Fields ist der Default, aber das hat Probleme beim Deserialize. Während beim Serialize das F bei den Feldnamen entfernt wird, fehlt dies offenbar beim Vergleich der Feldnamen während des Deserialize in TJsonObjectContract.GetClosestMatchProperty . Ich habe das jetzt nicht bis zu Ende analysiert, aber ich gehe da von einem Bug aus. Es wundert mich aber, dass das offenbar noch keinem aufgefallen ist.
Ja, meine Analyse wird allmählich etwas umfangreicher (verschiedene Konstellationen, neuer Parameter "FTest3", der nur Private ist. Interfaces, umfangreichere Logs samt Performance-Tests. Mit [JsonName('Test')] als Attribut pro Feld geht es (was ja auch deiner "Das 'F' wird nicht entfernt"-Erkenntnis entsprechen würde). Ich halte euch da hier auf dem Laufenden.

Wenn es dir um Performance geht, kann ich dir das hier empfehlen:
https://github.com/paolo-rossi/delphi-neon
Ja es gibt etliche Drittanbieter-Lösungen. Darauf möchte ich aber in diesem Fall verzichten.
Der minimale Performance-Gewinn ist es mir nicht wert mich da ggf. abhängig zu machen. Ggf. regelmäßige Updates einzupflegen. Oder gar Gefahr zu laufen, dass das Projekt eingestampft wird und alles nochmal umbauen zu müssen.

Liebe Grüße und schonmal vielen Dank bis hierhin für eure Mühe
Incocnito
  Mit Zitat antworten Zitat