Partager via


CborWriter.WriteStartMap(Nullable<Int32>) Méthode

Définition

Écrit le début d’un mappage de longueur définie ou indéfinie (type principal 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))

Paramètres

definiteLength
Nullable<Int32>

La longueur du mappage de longueur définie ou null, pour un mappage de longueur indéfinie.

Exceptions

Ce paramètre definiteLength ne peut pas être négatif.

L’écriture d’une nouvelle valeur dépasse la longueur définie de l’élément de données parent.

- ou -

Le type principal de la valeur encodée n’est pas autorisé dans l’élément de données parent.

- ou -

Les données écrites ne sont pas acceptées dans le mode de conformité actuel.

Remarques

Dans les modes de conformité canonique, l’enregistreur rejette les écritures de longueur indéfinie, sauf si l’indicateur ConvertIndefiniteLengthEncodings est activé. Le contenu de la carte est écrit comme si des tableaux doublent la longueur de la taille déclarée de la carte. Par exemple, une carte de taille 1 contenant une clé de type Int32 avec une valeur de type chaîne doit être écrite par des appels successifs à WriteInt32(Int32) et WriteTextString(ReadOnlySpan<Char>). Il appartient à l’appelant de suivre si l’appel suivant est une clé ou une valeur. Fondamentalement, il s’agit d’une restriction technique découlant du fait que CBOR autorise les clés de n’importe quel type, par exemple, une carte peut contenir des clés qui sont elles-mêmes des cartes.

S’applique à