System.JSON.Readers.TJsonReader.MaxDepth

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

property MaxDepth: Integer read FMaxDepth write FMaxDepth;

C++

__property int MaxDepth = {read=FMaxDepth, write=FMaxDepth, nodefault};

Propriétés

Type Visibilité  Source Unité  Parent
property public
System.JSON.Readers.pas
System.JSON.Readers.hpp
System.JSON.Readers TJsonReader


Description

Obtient ou définit la profondeur maximale du niveau imbriqué autorisé à la lecture de JSON.

Lire au-delà de la limite MaxDepth déclenche une exception EJsonReaderException.

The <reader_name>'s MaxDeepth of <MaxDepth_value> has been exceeded. Path <path_to_token>, line <line_number>, position <position_number_inside_line>.

Une valeur négative pour MaxDepth signifie qu'il n'y a pas de limite de profondeur. La valeur par défaut est -1.

Par exemple :

'{"Transaction":[' 
  '{"id":662713, "firstName":"John", "lastName":"Doe", "price": 2.1, "parent_id": null, validated:true, "items":[{"id":001,"ItemName":"Cup"},{"id":002,"ItemName":"Sticker"}]},'
  '{"id":662714, "firstName":"Anna", "lastName":"Smith", "price": 4.5, "parent_id": null, validated: false},' 
  '{"id":662715, "firstName":"Peter", "lastName":"Jones", "price": 3.6, "parent_id": null, validated: true}' 
  ']}'

Si vous définissez MaxDepth sur 3, le lecteur déclenche une exception quand il arrive à items :

The reader's MaxDeepth of 3 has been exceeded. Path Transaction[0].items, line 2, position 112.

Voir aussi