AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

JSON To Object Problem

Ein Thema von Samashy · begonnen am 17. Apr 2021 · letzter Beitrag vom 17. Apr 2021
 
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.652 Beiträge
 
Delphi 12 Athens
 
#2

AW: JSON To Object Problem

  Alt 17. Apr 2021, 10:46
  1. values ist ein Array
  2. meters ebenso (arrays sind keine TObjectList)

Die JsonName-Attribute kannst du weglassen, wenn das Feld lediglich dem Json-Namen mit vorangestellten F entspricht (value -> FValue). Dabei kann der Buchstabe nach dem F auch großgeschrieben werden.

Versuch's mal so:
Delphi-Quellcode:
type
  TValue = class
  private
    Fdate: string;
    Fvalue: Integer;
  published
    property date: string read Fdate write Fdate;
    property value: Integer read Fvalue write Fvalue;
  end;
  TValues = TArray<TValue>;

  TMeter = class
  private
    Ftype: string;
    Fvalues: TValues;
  public
    destructor Destroy; override;
  published
    property types: string read Ftype write Ftype;
    property values: TValues read Fvalues write Fvalues;
  end;
  TMeters = TArray<TMeter>;

  TEnergyDetails = class
  private
    FtimeUnit: string;
    Funit: string;
    Fmeters: TMeters;
  public
    destructor Destroy; override;
  published
    property timeUnit: string read FtimeUnit;
    property units: string read Funit;
    property meters: TMeters read Fmeters;
  end;

implementation

destructor TMeter.Destroy;
var
  I: Integer;
begin
  for I := 0 to Length(FValues) - 1 do
    FValues[I].Free;
  inherited;
end;

destructor TEnergyDetails.Destroy;
var
  I: Integer;
begin
  for I := 0 to Length(Fmeters) - 1 do
    Fmeters[I].Free;
  inherited;
end;
Wenn du TObjecList für ein Json-Array verwenden willst empfehle ich diesen Artikel: Serializing Generic Object Lists with TJson
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
 


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 00:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz