Bonjour,
J'ai un projet à faire dans lequel je dois faire transiter des infos entre Delphi et un portail PHP.
Je souhaite le réaliser en JSON et j'ai donc commencé à investiguer sur la techno coté Delphi.
Je me heurte à quelques difficultés. J'ai du mal de trouver des tutos intéressants. J'ai commencé à travailler avec les classes de bases de Delphi, et je rencontre des difficultés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 TContrat =class private FdDateDeb: TDate; public property dDateDeb: TDate read FdDateDeb write FdDateDeb; end; TApprenant =class private FsNom :string; [JSONName('ListContrat')] FListContrat: TObjectList<TContrat>; public property sNom :string read FsNom write FsNom; property ListContrat: TObjectList<TContrat> read FListContrat write FListContrat; end; ... procedure TForm3.Button2Click(Sender: TObject); var apprenant : TApprenant; contrat : TContrat; begin Memo1.Clear; apprenant := TApprenant.Create; apprenant.sNom :='JEAN'; contrat := TContrat.Create; contrat.dDateDeb := StrToDate('01/01/2015'); apprenant.ListContrat.Add(contrat); contrat := TContrat.Create; contrat.dDateDeb := StrToDate('01/01/2016'); apprenant.ListContrat.Add(contrat); Memo1.Lines.Add(TJson.ObjectToJsonString(apprenant));end;Dans cette exemple la sérialisation du la TObjectList<> m'a donné des données genre "ownsObjects" que je ne souhaite pas voir (pas d'intérêt pour PHP).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 { "sNom": "JEAN", "ListContrat": { "ownsObjects": true, "items": [{ "dDateDeb": 42005, },{ "dDateDeb": 42370, }], "count":2, "arrayManager":{} }}
Comment enlever ce genre d'info ?
Est la meilleur solution pour faire du JSON ? Doit-on passer par un autre frameWork, ... ?
Partager