Bagikan melalui


AsnDecoder.ReadEnumeratedValue Metode

Definisi

Overload

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

Membaca Enumerasi dari source dengan tag tertentu di bawah aturan pengodean yang ditentukan, mengonversinya menjadi enum non-[FlagsAttribute] yang ditentukan oleh enumType.

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

Membaca Enumerasi dari source dengan tag tertentu di bawah aturan pengodean yang ditentukan, mengonversinya menjadi enum non-[FlagsAttribute] yang ditentukan oleh TEnum.

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

Sumber:
AsnDecoder.Enumerated.cs
Sumber:
AsnDecoder.Enumerated.cs
Sumber:
AsnDecoder.Enumerated.cs

Membaca Enumerasi dari source dengan tag tertentu di bawah aturan pengodean yang ditentukan, mengonversinya menjadi enum non-[FlagsAttribute] yang ditentukan oleh 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>

Buffer yang berisi data yang dikodekan.

ruleSet
AsnEncodingRules

Batasan pengodean yang akan digunakan saat menginterpretasikan data.

enumType
Type

Ketik objek yang mewakili jenis tujuan.

bytesConsumed
Int32

Ketika metode ini kembali, jumlah total byte untuk nilai yang dikodekan. Parameter ini diperlakukan sebagai tidak diinisialisasi.

expectedTag
Nullable<Asn1Tag>

Tag yang akan diperiksa sebelum membaca, atau null untuk tag default (Universal 10).

Mengembalikan

Nilai Enumerasi dikonversi menjadi enumType.

Pengecualian

Nilai berikutnya tidak memiliki tag yang benar.

-atau-

Pengodean panjang tidak valid di bawah aturan pengodean saat ini.

-atau-

Isi tidak valid di bawah aturan pengodean saat ini.

-atau-

Nilai yang dikodekan terlalu besar agar pas dalam nilai enumType .

enumType bukan jenis enum.

-atau-

enumType dinyatakan dengan FlagsAttribute.

-atau-

enumType.TagClass adalah Universal, tetapi enumType.TagValue tidak benar untuk metode .

enumTypeadalah null.

Keterangan

Metode ini tidak memvalidasi bahwa nilai yang dikembalikan ditentukan dalam enumType.

Berlaku untuk

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

Sumber:
AsnDecoder.Enumerated.cs
Sumber:
AsnDecoder.Enumerated.cs
Sumber:
AsnDecoder.Enumerated.cs

Membaca Enumerasi dari source dengan tag tertentu di bawah aturan pengodean yang ditentukan, mengonversinya menjadi enum non-[FlagsAttribute] yang ditentukan oleh 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

Jenis parameter

TEnum

Jenis enum tujuan.

Parameter

source
ReadOnlySpan<Byte>

Buffer yang berisi data yang dikodekan.

ruleSet
AsnEncodingRules

Batasan pengodean yang akan digunakan saat menginterpretasikan data.

bytesConsumed
Int32

Ketika metode ini kembali, jumlah total byte untuk nilai yang dikodekan. Parameter ini diperlakukan sebagai tidak diinisialisasi.

expectedTag
Nullable<Asn1Tag>

Tag yang akan diperiksa sebelum membaca, atau null untuk tag default (Universal 10).

Mengembalikan

TEnum

Nilai Enumerasi dikonversi menjadi TEnum.

Pengecualian

ruleSet tidak didefinisikan.

Nilai berikutnya tidak memiliki tag yang benar.

-atau-

Pengodean panjang tidak valid di bawah aturan pengodean saat ini.

-atau-

Isi tidak valid di bawah aturan pengodean saat ini.

-atau-

Nilai yang dikodekan terlalu besar agar pas dalam nilai enumType .

TEnum bukan jenis enum.

-atau-

TEnum dinyatakan dengan FlagsAttribute.

-atau-

expectedTag.TagClass adalah Universal, tetapi expectedTag.TagValue tidak benar untuk metode .

Keterangan

Metode ini tidak memvalidasi bahwa nilai yang dikembalikan ditentukan dalam TEnum.

Berlaku untuk