AsnDecoder.ReadEnumeratedValue Methode

Definition

Überlädt

ReadEnumeratedValue(ReadOnlySpan<Byte>, AsnEncodingRules, Type, Int32, Nullable<Asn1Tag>)

Liest einen Enumerationswert aus source mit einem angegebenen Tag gemäß den angegebenen Codierungsregeln und konvertiert diesen wird in die von enumType angegebene Nicht-[FlagsAttribute]-Enumeration.Reads an Enumerated from source with a specified tag under the specified encoding rules, converting it to the non-[FlagsAttribute] enum specified by enumType.

ReadEnumeratedValue<TEnum>(ReadOnlySpan<Byte>, AsnEncodingRules, Int32, Nullable<Asn1Tag>)

Liest einen Enumerationswert aus source mit einem angegebenen Tag gemäß den angegebenen Codierungsregeln und konvertiert diesen in die von TEnum angegebene nicht-[FlagsAttribute]-Enumeration.Reads an Enumerated from source with a specified tag under the specified encoding rules, converting it to the non-[FlagsAttribute] enum specified by TEnum.

ReadEnumeratedValue(ReadOnlySpan<Byte>, AsnEncodingRules, Type, Int32, Nullable<Asn1Tag>)

Liest einen Enumerationswert aus source mit einem angegebenen Tag gemäß den angegebenen Codierungsregeln und konvertiert diesen wird in die von enumType angegebene Nicht-[FlagsAttribute]-Enumeration.Reads an Enumerated from source with a specified tag under the specified encoding rules, converting it to the non-[FlagsAttribute] enum specified by enumType.

public static Enum ReadEnumeratedValue (ReadOnlySpan<byte>? source, System.Formats.Asn1.AsnEncodingRules ruleSet, Type enumType, out int bytesConsumed, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member ReadEnumeratedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * Type * int * Nullable<System.Formats.Asn1.Asn1Tag> -> Enum
Public Shared Function ReadEnumeratedValue (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, enumType As Type, ByRef bytesConsumed As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As Enum

Parameter

source
ReadOnlySpan<Byte>

Der Puffer, der codierte Daten enthält.The buffer containing encoded data.

ruleSet
AsnEncodingRules

Die Codierungseinschränkungen, die beim Interpretieren der Daten verwendet werden sollen.The encoding constraints to use when interpreting the data.

enumType
Type

Typobjekt, das den Zieltyp darstellt.Type object representing the destination type.

bytesConsumed
Int32

Die Rückgabe dieser Methode ist die Gesamtzahl der Bytes für den codierten Wert.When this method returns, the total number of bytes for the encoded value. Dieser Parameter wird nicht initialisiert behandelt.This parameter is treated as uninitialized.

expectedTag
Nullable<Asn1Tag>

Das Tag, das vor dem Lesen überprüft werden soll, oder null für das Standardtag (Universell 10).The tag to check for before reading, or null for the default tag (Universal 10).

Gibt zurück

Enum

Der in einen enumType konvertierte Enumerationswert.The Enumerated value converted to a enumType.

Ausnahmen

Der nächste Wert weist nicht das richtige Tag auf.the next value does not have the correct tag. Oder die Längencodierung ist gemäß den aktuellen Codierungsregeln ungültig.-or- the length encoding is not valid under the current encoding rules. Oder der Inhalt ist gemäß den aktuellen Codierungsregeln ungültig.-or- the contents are not valid under the current encoding rules. Oder der codierte Wert ist zu groß für einen enumType-Wert.-or- the encoded value is too big to fit in a enumType value.

enumType ist kein Enumerationstyp.enumType is not an enum type. Oder enumType wurde mit FlagsAttribute deklariert.-or- enumType was declared with FlagsAttribute. Oder enumType.TagClass-or- enumType.TagClass ist Universal, aber enumType.TagValueis Universal, but enumType.TagValue ist für die Methode nicht richtig.is not correct for the method.

enumType ist null.enumType is null.

Hinweise

Diese Methode überprüft nicht, ob der Rückgabewert in definiert ist enumType .This method does not validate that the return value is defined within enumType.

Gilt für:

ReadEnumeratedValue<TEnum>(ReadOnlySpan<Byte>, AsnEncodingRules, Int32, Nullable<Asn1Tag>)

Liest einen Enumerationswert aus source mit einem angegebenen Tag gemäß den angegebenen Codierungsregeln und konvertiert diesen in die von TEnum angegebene nicht-[FlagsAttribute]-Enumeration.Reads an Enumerated from source with a specified tag under the specified encoding rules, converting it to the non-[FlagsAttribute] enum specified by TEnum.

public static TEnum? ReadEnumeratedValue<TEnum> (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int bytesConsumed, System.Formats.Asn1.Asn1Tag? expectedTag = default) where TEnum : Enum;
static member ReadEnumeratedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * Nullable<System.Formats.Asn1.Asn1Tag> -> 'Enum (requires 'Enum :> Enum)
Public Shared Function ReadEnumeratedValue(Of TEnum As Enum) (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef bytesConsumed As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As TEnum

Typparameter

TEnum

Ziel-Aufzählungs TypenDestination enum type

Parameter

source
ReadOnlySpan<Byte>

Der Puffer, der codierte Daten enthält.The buffer containing encoded data.

ruleSet
AsnEncodingRules

Die Codierungseinschränkungen, die beim Interpretieren der Daten verwendet werden sollen.The encoding constraints to use when interpreting the data.

bytesConsumed
Int32

Die Rückgabe dieser Methode ist die Gesamtzahl der Bytes für den codierten Wert.When this method returns, the total number of bytes for the encoded value. Dieser Parameter wird nicht initialisiert behandelt.This parameter is treated as uninitialized.

expectedTag
Nullable<Asn1Tag>

Das Tag, das vor dem Lesen überprüft werden soll, oder null für das Standardtag (Universell 10).The tag to check for before reading, or null for the default tag (Universal 10).

Gibt zurück

TEnum

Der in ein TEnum-Element konvertierte Enumerationswert.The Enumerated value converted to a TEnum.

Ausnahmen

ruleSet ist nicht definiert.ruleSet is not defined.

Der nächste Wert weist nicht das richtige Tag auf.the next value does not have the correct tag. Oder die Längencodierung ist gemäß den aktuellen Codierungsregeln ungültig.-or- the length encoding is not valid under the current encoding rules. Oder der Inhalt ist gemäß den aktuellen Codierungsregeln ungültig.-or- the contents are not valid under the current encoding rules. Oder der codierte Wert ist zu groß für einen TEnum-Wert.-or- the encoded value is too big to fit in a TEnum value.

TEnum ist kein Enumerationstyp.TEnum is not an enum type. Oder TEnum wurde mit FlagsAttribute deklariert.-or- TEnum was declared with FlagsAttribute. Oder expectedTag.TagClass-or- expectedTag.TagClass ist Universal, aber expectedTag.TagValueis Universal, but expectedTag.TagValue ist für die Methode nicht richtig.is not correct for the method.

Hinweise

Diese Methode überprüft nicht, ob der Rückgabewert in <typeparamref Name = "TEnum> definiert ist.This method does not validate that the return value is defined within <typeparamref name="TEnum>.

Gilt für: