Condividi tramite


CborWriter.WriteStartMap(Nullable<Int32>) Metodo

Definizione

Scrive l'inizio di una mappa di lunghezza definita o indefinita (tipo principale 5).

public:
 void WriteStartMap(Nullable<int> definiteLength);
public void WriteStartMap (int? definiteLength);
member this.WriteStartMap : Nullable<int> -> unit
Public Sub WriteStartMap (definiteLength As Nullable(Of Integer))

Parametri

definiteLength
Nullable<Int32>

Lunghezza della mappa di lunghezza definita o null per una mappa di lunghezza indefinita.

Eccezioni

Il parametro definiteLength non può essere negativo.

La scrittura di un nuovo valore supera la lunghezza definita dell'elemento dati padre.

-oppure-

Il tipo principale del valore codificato non è consentito nell'elemento di dati padre.

-oppure-

I dati scritti non vengono accettati nella modalità di conformità corrente.

Commenti

Nelle modalità di conformità canonica, il writer rifiuterà le scritture a lunghezza indefinita, a meno che il ConvertIndefiniteLengthEncodings flag non sia abilitato. Il contenuto della mappa viene scritto come se le matrici siano due volte la lunghezza delle dimensioni dichiarate della mappa. Ad esempio, una mappa di dimensioni 1 contenente una chiave di tipo Int32 con un valore stringa di tipo deve essere scritta dalle chiamate successive a WriteInt32(Int32) e WriteTextString(ReadOnlySpan<Char>). Spetta al chiamante tenere traccia del fatto che la chiamata successiva sia una chiave o un valore. Fondamentalmente, si tratta di una restrizione tecnica derivante dal fatto che CBOR consente chiavi di qualsiasi tipo, ad esempio, una mappa può contenere chiavi che sono mappe stesse.

Si applica a