AsnDecoder.ReadSetOf 方法

定义

在指定编码规则下,从带有指定标记的 source 中读取 Set-Of 值。

public static void ReadSetOf (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int contentOffset, out int contentLength, out int bytesConsumed, bool skipSortOrderValidation = false, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member ReadSetOf : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * int * int * bool * Nullable<System.Formats.Asn1.Asn1Tag> -> unit
Public Shared Sub ReadSetOf (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef contentOffset As Integer, ByRef contentLength As Integer, ByRef bytesConsumed As Integer, Optional skipSortOrderValidation As Boolean = false, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing)

参数

source
ReadOnlySpan<Byte>

包含编码数据的缓冲区。

ruleSet
AsnEncodingRules

解释数据时使用的编码约束。

contentOffset
Int32

此方法返回时,为内容有效负载相对于 source 起始位置的偏移量。 该参数未经初始化即被处理。

contentLength
Int32

此方法返回时,为内容有效负载中的字节数(可能为 0)。 该参数未经初始化即被处理。

bytesConsumed
Int32

此方法返回时,为编码值的字节总数。 该参数未经初始化即被处理。

skipSortOrderValidation
Boolean

如果为 true,则始终按显示的顺序接受数据,如果为 false,则验证在编码规则说明需要排序时是否正确地对数据进行排序(CER 和 DER)。

expectedTag
Nullable<Asn1Tag>

读取前要检查的标记,或使用 null 作为默认标记(通用 17)。

例外

未定义ruleSet

下一个值没有正确的标记。

-或-

长度编码在当前编码规则下无效。

-或-

在当前编码规则下,内容无效。

expectedTagTagClassUniversal,但 expectedTagTagValue 对于 方法,则不正确。

注解

此方法不计算嵌套内容,但用于确定内容结束标记的位置或内容排序顺序验证的最小处理除外。 因此,内容可能包含在当前编码规则下无效的数据。

适用于