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

Définition

Écrit le début d’une carte 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>

Longueur de la carte de longueur définie ou null pour une carte de longueur indéfinie.

Exceptions

Le definiteLength paramètre 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 en 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 s’il s’agit de tableaux deux fois 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 chaîne de type doit être écrite par des appels successifs vers WriteInt32(Int32) et WriteTextString(ReadOnlySpan<Char>). Il incombe à l’appelant de suivre si l’appel suivant est une clé ou une valeur. Fondamentalement, il s’agit d’une restriction technique résultant du fait que CBOR autorise les clés de n’importe quel type, par exemple, une carte peut contenir des clés qui sont des cartes elles-mêmes.

S’applique à