Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article fournit des remarques supplémentaires à la documentation de référence de cette API.
La XmlConvert classe est fonctionnellement équivalente à la Convert classe, mais elle prend en charge les normes XML. Le système de type est basé sur le type de schéma XSD (XML Schema Definition Language) et les valeurs retournées sont toujours indépendantes des paramètres régionaux.
Encodage et décodage
Les noms d’éléments et d’attributs ou les valeurs d’ID sont limités à une plage de caractères XML en fonction de la recommandation W3C XML 1.0. Lorsque les noms contiennent des caractères non valides, vous pouvez utiliser les méthodes et DecodeName les EncodeName méthodes de cette classe pour les traduire en noms XML valides.
Par exemple, si vous souhaitez utiliser l’en-tête de colonne « Détail de l’ordre » dans une base de données, la base de données autorise l’espace entre les deux mots. Toutefois, en XML, l’espace entre « Order » et « Detail » est considéré comme un caractère XML non valide. Vous devez le convertir en encodage hexadécimal d’échappement et le décoder ultérieurement.
Vous pouvez utiliser la EncodeName méthode avec la XmlWriter classe pour vous assurer que les noms écrits sont des noms XML valides. Le code C# suivant convertit le nom « Order Detail » en un nom XML valide et écrit l’élément <Order_0x0020_Detail>My order</Order_0x0020_Detail>.
writer.WriteElementString(XmlConvert.EncodeName("Order Detail"),"My order");
Les méthodes suivantes XmlConvert effectuent l’encodage et le décodage.
| Méthode | Descriptif |
|---|---|
| EncodeName | Prend un nom et retourne le nom encodé avec tout caractère non valide remplacé par une chaîne d’échappement. Cette méthode autorise les deux-points dans n’importe quelle position, ce qui signifie que le nom peut toujours être non valide en fonction des espaces de noms W3C dans la recommandation XML 1.0. |
| EncodeNmToken | Prend un nom et retourne le nom encodé. |
| EncodeLocalName | Identique à ceci sauf EncodeName qu’il encode également le caractère deux-points, garantissant que le nom peut être utilisé comme LocalName partie d’un nom qualifié d’espace de noms. |
| DecodeName | Inverse la transformation de toutes les méthodes d’encodage. |
Validation de nom
La XmlConvert classe contient deux méthodes qui vérifient les caractères d’un nom d’élément ou d’attribut et vérifient que le nom est conforme aux règles définies par la recommandation W3C XML 1.0 :
- VerifyName vérifie les caractères et vérifie que le nom est valide. La méthode retourne le nom s’il est valide et lève une exception si ce n’est pas le cas.
- VerifyNCName effectue la même validation, mais accepte des noms non qualifiés.
Contient XmlConvert des méthodes supplémentaires qui valident les jetons, les espaces blancs, les ID publics et d’autres chaînes.
Conversion de types de données
XmlConvert fournit également des méthodes qui vous permettent de convertir des données d’une chaîne en type de données fortement typé. Par exemple, la ToDateTime méthode convertit une chaîne en son DateTime équivalent. Cela est utile, car la plupart des méthodes de la XmlReader classe retournent des données sous forme de chaîne. Une fois les données lues, elles peuvent être converties en type de données approprié avant d’être utilisées. Les ToString surcharges fournissent l’opération complémentaire en convertissant des données fortement typées en chaînes. Par exemple, cela est utile lorsque vous souhaitez ajouter les données aux zones de texte d’une page web. Les paramètres régionaux ne sont pas pris en compte lors de la conversion des données. Les types de données sont basés sur les types de données XML Schema (XSD).