Compartir a través de


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

Definición

Escribe el inicio de un mapa definitiva o de longitud indefinida (tipo 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))

Parámetros

definiteLength
Nullable<Int32>

La longitud del mapa de longitud definitiva, o null para un mapa de longitud indefinida.

Excepciones

El parámetro definiteLength no puede ser negativo.

Escribir un nuevo valor supera la longitud definitiva del elemento de datos primario.

O bien

No se permite el tipo principal del valor codificado en el elemento de datos primario.

O bien

Los datos escritos no se aceptan en el modo de conformidad actual.

Comentarios

En los modos de conformidad canónica, el escritor rechazará las escrituras de longitud indefinida a menos que la ConvertIndefiniteLengthEncodings marca esté habilitada. El contenido del mapa se escribe como si las matrices dos veces la longitud del tamaño declarado del mapa. Por ejemplo, una asignación de tamaño 1 que contiene una clave de tipo Int32 con un valor de cadena de tipo debe escribirse mediante llamadas sucesivas a WriteInt32(Int32) y WriteTextString(ReadOnlySpan<Char>). Depende del autor de la llamada realizar un seguimiento de si la siguiente llamada es una clave o un valor. Fundamentalmente, se trata de una restricción técnica derivada del hecho de que CBOR permite claves de cualquier tipo, por ejemplo, un mapa puede contener claves que se asignan por sí mismas.

Se aplica a