AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Delphi DMVC Mapper.ObjectToJSONObjectString und StringList? Array?
Thema durchsuchen
Ansicht
Themen-Optionen

DMVC Mapper.ObjectToJSONObjectString und StringList? Array?

Ein Thema von Necrotarch · begonnen am 31. Jan 2017
Antwort Antwort
Necrotarch

Registriert seit: 31. Jan 2017
3 Beiträge
 
#1

DMVC Mapper.ObjectToJSONObjectString und StringList? Array?

  Alt 31. Jan 2017, 19:44
Ich habe das folgende Objekt und versuch es mit dem DMVC-Framework zu serialisieren und de-serialisieren.

Delphi-Quellcode:
TCardsAgainstHumanityJSON = class
private
  FBlackCards : TBlackCardsList;
  FDescription : string;
  FExpansion : Boolean;
  FName : string;
  FWatermark : string;
  FWhiteCards : TList<String>;
public
  [MapperListOf(TBlackCards)]
  property blackCards : TBlackCardsList read FBlackCards write FBlackCards;
  property description : string read FDescription write FDescription;
  property expansion : Boolean read FExpansion write FExpansion;
  property name : string read FName write FName;
  property watermark : string read FWatermark write FWatermark;
  property whiteCards : TList<string> read FWhiteCards write FWhiteCards;

  constructor Create;
  destructor Destroy; override;
  function ToJsonString: string;
  class function FromJsonString(const JsonString: string): TCardsAgainstHumanityJSON;
end;

{...}

constructor TCardsAgainstHumanityJSON.Create;
begin
  Inherited;
  FBlackCards := TBlackCardsList.Create(True);
  FWhiteCards := TList<String>.Create();
end;

destructor TCardsAgainstHumanityJSON.Destroy;

begin
  FBlackCards.Free;
  FWhiteCards.Free;

  inherited;
end;

function TCardsAgainstHumanityJSON.ToJsonString: string;
begin
  Result := Mapper.ObjectToJSONObjectString(Self);
end;

class function TCardsAgainstHumanityJSON.FromJsonString(const JsonString: string): TCardsAgainstHumanityJSON;
begin
  Result := Mapper.JSONObjectStringToObject<TCardsAgainstHumanityJSON>(JsonString);
end;
FromJsonString klappt einwandfrei. Mapper.ObjectToJSONObjectString versucht im inneren jedoch whiteCards als Objektliste zu behandeln, das rennt jedoch in eine ungültige Typumwandlung. Ich hab auch schon versucht whiteCards als TArray<string> zu deklarieren, nur befüllt JSONObjectStringToObject das leider nicht. Muss ich vlt. noch ein Attribut setzen oder übersehe ich noch etwas?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:44 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