Partager via


AsnDecoder.TryReadEncodedValue Méthode

Définition

Tente de localiser la plage de contenu pour la valeur encodée au début de la mémoire tampon source en utilisant les règles d’encodage spécifiées.

public:
 static bool TryReadEncodedValue(ReadOnlySpan<System::Byte> source, System::Formats::Asn1::AsnEncodingRules ruleSet, [Runtime::InteropServices::Out] System::Formats::Asn1::Asn1Tag % tag, [Runtime::InteropServices::Out] int % contentOffset, [Runtime::InteropServices::Out] int % contentLength, [Runtime::InteropServices::Out] int % bytesConsumed);
public static bool TryReadEncodedValue (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out System.Formats.Asn1.Asn1Tag tag, out int contentOffset, out int contentLength, out int bytesConsumed);
static member TryReadEncodedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * Asn1Tag * int * int * int -> bool
Public Shared Function TryReadEncodedValue (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef tag As Asn1Tag, ByRef contentOffset As Integer, ByRef contentLength As Integer, ByRef bytesConsumed As Integer) As Boolean

Paramètres

source
ReadOnlySpan<Byte>

Mémoire tampon contenant les données encodées.

ruleSet
AsnEncodingRules

Contraintes d’encodage à utiliser lors de l’interprétation des données.

tag
Asn1Tag

Lorsque cette méthode retourne une valeur, balise identifiant le contenu. Ce paramètre est traité comme étant non initialisé.

contentOffset
Int32

Lorsque cette méthode retourne une valeur, décalage de la charge utile de contenu par rapport au début de source. Ce paramètre est traité comme étant non initialisé.

contentLength
Int32

Lorsque cette méthode retourne une valeur, nombre d’octets dans la charge utile de contenu (peut être égal à 0). Ce paramètre est traité comme étant non initialisé.

bytesConsumed
Int32

Lorsque cette méthode retourne une valeur, nombre total d’octets pour la valeur encodée. Ce paramètre est traité comme étant non initialisé.

Retours

true si source représente un encodage structurel valide pour les règles d’encodage spécifiées ; sinon, false.

Exceptions

ruleSet n’est pas défini.

Remarques

Cette méthode effectue très peu de validation sur le contenu. Si la valeur encodée utilise une longueur définie, le contenu n’est pas inspecté du tout. Si la valeur encodée utilise une longueur indéfinie, le contenu est inspecté uniquement si nécessaire pour déterminer l’emplacement du marqueur de fin de contenu approprié.

Lorsque la valeur encodée utilise une longueur indéfinie, la bytesConsumed valeur est supérieure à la somme de contentOffset et contentLength pour tenir compte du marqueur de fin de contenu.

S’applique à