다음을 통해 공유


CborWriter.WriteStartMap(Nullable<Int32>) 메서드

정의

유한 또는 무한 길이 맵(주 형식 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))

매개 변수

definiteLength
Nullable<Int32>

유한 길이 맵의 길이이거나 무한 길이 맵의 경우 null입니다.

예외

definiteLength 매개 변수는 음수일 수 없습니다.

새 값을 쓰면 부모 데이터 항목의 유한 길이를 초과합니다.

-또는-

인코딩된 값의 주 형식이 부모 데이터 항목에서 허용되지 않습니다.

-또는-

쓴 데이터가 현재 규칙 모드에서 허용되지 않습니다.

설명

정식 규칙 모드에서 기록기는 플래그를 사용하도록 설정하지 않는 한 무한 길이 쓰기를 ConvertIndefiniteLengthEncodings 거부합니다. 지도 콘텐츠는 배열이 맵의 선언된 크기의 두 배 길이인 것처럼 작성됩니다. 예를 들어 형식 문자열 값이 있는 형식 Int32 의 키를 포함하는 크기 1의 맵은 및 WriteTextString(ReadOnlySpan<Char>)에 대한 연속 호출을 WriteInt32(Int32) 통해 작성되어야 합니다. 다음 호출이 키인지 값인지를 추적하는 것은 호출자에게 달려 있습니다. 기본적으로 이는 CBOR이 모든 형식의 키를 허용한다는 사실에서 비롯된 기술적 제한입니다. 예를 들어 지도 자체에 맵이 있는 키가 포함될 수 있습니다.

적용 대상