Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
22. Mär 2017
Tatsächlich.
Schlimm aber, dass es früher anscheinend schon funktioniert hatte.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
22. Mär 2017
Hm, ist doch aber noch auf:
Status:Open
Resolution: Unresolved
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
3. Mär 2017
Wäre zwar irgendwie "richtiger", aber da der entstehende JSON-String für mein eigentliches Problem-Objekt recht kompakt ist und es sonst nur String- und Zahlen-Typen hat bin ich jetzt auf diese hemdsärmlige Lösung umgestiegen:
function FixJsonSerializationForEmptyArrays(const AJsonString: string): string;
begin
Result := StringReplace(AJsonString, 'null', '', )
end;
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
2. Mär 2017
Wenn man in TJson.ProcessOptions reinschaut, dann ist an der folgenden kommentiert-markierten Stelle für mein leeres Array der Typ von LPair.JsonValue nicht TJSONArray sondern TJSONNull.
class procedure TJson.ProcessOptions(AJsonObject: TJSOnObject; AOptions: TJsonOptions);
var
LPair: TJSONPair;
LItem: TObject;
i: Integer;
function IsEmpty(ASet: TJsonOptions):boolean;
var
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
2. Mär 2017
Hallo zusammen,
ich bin gerade über einen Fall gestolpert, wo ein REST-WebService unbedingt leere Arrays als {"dataItems":} codiert haben möchte.
Der Serialisierer aus REST.Json.TJson macht mir aber daraus immer {"dataItems":null}.
Soll das so? Erlaubt der JSON-Standard beide Varianten?
Kann ich das beeinflussen? Die optionalen TJsonOptions haben mich nicht weitergebracht.
Gibt es noch...