System.JSON.Readers.TJsonReader.MaxDepth
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.