Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Littéral qui représente un XElement objet.
Syntaxe
<name [ attributeList ] />
-or-
<name [ attributeList ] > [ elementContents ] </[ name ]>
Pièces
<Obligatoire. Ouvre la balise d’élément de départ.
nameObligatoire. Nom de l’élément. Le format est l’un des suivants :
Texte littéral du nom de l’élément, du formulaire
[ePrefix:]eName, où :Composant Descriptif ePrefixOptionnel. Préfixe d’espace de noms XML pour l’élément. Doit être un espace de noms XML global défini avec une Importsinstruction dans le fichier ou au niveau du projet, ou un espace de noms XML local défini dans cet élément ou un élément parent.eNameObligatoire. Nom de l’élément. Le format est l’un des suivants :
- Texte littéral. Consultez les noms des éléments et attributs XML déclarés.
- Expression incorporée du formulaire<%= eNameExp %>. Le type deeNameExpdoit êtreStringou un type qui est implicitement convertible en XName.Expression incorporée du formulaire
<%= nameExp %>. Le type denameExpdoit êtreStringou un type implicitement convertible en XName. Une expression incorporée n’est pas autorisée dans une balise fermante d’un élément.
attributeListOptionnel. Liste des attributs déclarés dans le littéral.
attribute [ attribute ... ]Chacun
attributea l’une des syntaxes suivantes :Affectation d’attributs, du formulaire
[aPrefix:]aName=aValue, où :Composant Descriptif aPrefixOptionnel. Préfixe d’espace de noms XML pour l’attribut. Doit être un espace de noms XML global défini avec une Importsinstruction ou un espace de noms XML local défini dans cet élément ou un élément parent.aNameObligatoire. Nom de l’attribut. Le format est l’un des suivants :
- Texte littéral. Consultez les noms des éléments et attributs XML déclarés.
- Expression incorporée du formulaire<%= aNameExp %>. Le type deaNameExpdoit êtreStringou un type qui est implicitement convertible en XName.aValueOptionnel. Valeur de l’attribut. Le format est l’un des suivants :
- Texte littéral, placé entre guillemets.
- Expression incorporée du formulaire<%= aValueExp %>. Tout type est autorisé.Expression incorporée du formulaire
<%= aExp %>.
/>Optionnel. Indique que l’élément est un élément vide, sans contenu.
>Obligatoire. Termine la balise d’élément début ou vide.
elementContentsOptionnel. Contenu de l’élément.
content [ content ... ]Chacun
contentpeut être l’un des éléments suivants :Texte littéral. Tout l’espace blanc devient
elementContentssignificatif s’il existe un texte littéral.Expression incorporée du formulaire
<%= contentExp %>.Littéral d’élément XML.
Littéral de commentaire XML. Voir littéral de commentaire XML.
Littéral d’instruction de traitement XML. Consultez littéral d’instruction de traitement XML.
Littéral CDATA XML. Voir littéral CDATA XML.
</[name]>Optionnel. Représente la balise de fermeture de l’élément. Le paramètre facultatif
namen’est pas autorisé lorsqu’il s’agit du résultat d’une expression incorporée.
Valeur de retour
Objet XElement .
Remarques
Vous pouvez utiliser la syntaxe littérale de l’élément XML pour créer des XElement objets dans votre code.
Remarque
Un littéral XML peut s’étendre sur plusieurs lignes sans utiliser de caractères de continuation de ligne. Cette fonctionnalité vous permet de copier du contenu à partir d’un document XML et de le coller directement dans un programme Visual Basic.
Les expressions incorporées du formulaire <%= exp %> vous permettent d’ajouter des informations dynamiques à un littéral d’élément XML. Pour plus d’informations, consultez Expressions incorporées dans XML.
Le compilateur Visual Basic convertit le littéral d’élément XML en appels au XElement constructeur et, s’il est nécessaire, le XAttribute constructeur.
Espaces de noms XML
Les préfixes d’espace de noms XML sont utiles lorsque vous devez créer des littéraux XML avec des éléments du même espace de noms plusieurs fois dans le code. Vous pouvez utiliser des préfixes d’espace de noms XML globaux, que vous définissez à l’aide de l’instruction Imports ou des préfixes locaux, que vous définissez à l’aide de la xmlns:xmlPrefix="xmlNamespace" syntaxe d’attribut. Pour plus d’informations, consultez Imports Statement (XML Namespace).
Conformément aux règles d’étendue pour les espaces de noms XML, les préfixes locaux sont prioritaires sur les préfixes globaux. Toutefois, si un littéral XML définit un espace de noms XML, cet espace de noms n’est pas disponible pour les expressions qui apparaissent dans une expression incorporée. L’expression incorporée peut accéder uniquement à l’espace de noms XML global.
Le compilateur Visual Basic convertit chaque espace de noms XML global utilisé par un littéral XML en une définition d’espace de noms local dans le code généré. Les espaces de noms XML globaux qui ne sont pas utilisés n’apparaissent pas dans le code généré.
Exemple 1
L’exemple suivant montre comment créer un élément XML simple qui a deux éléments vides imbriqués.
Dim test1 As XElement =
<outer>
<inner1></inner1>
<inner2/>
</outer>
Console.WriteLine(test1)
L’exemple affiche le texte suivant. Notez que le littéral conserve la structure des éléments vides.
<outer>
<inner1></inner1>
<inner2 />
</outer>
Exemple 2
L’exemple suivant montre comment utiliser des expressions incorporées pour nommer un élément et créer des attributs.
Dim elementType = "book"
Dim authorName = "My Author"
Dim attributeName1 = "year"
Dim attributeValue1 = 1999
Dim attributeName2 = "title"
Dim attributeValue2 = "My Book"
Dim book As XElement =
<<%= elementType %>
isbn="1234"
author=<%= authorName %>
<%= attributeName1 %>=<%= attributeValue1 %>
<%= New XAttribute(attributeName2, attributeValue2) %>
/>
Console.WriteLine(book)
Ce code affiche le texte suivant :
<book isbn="1234" author="My Author" year="1999" title="My Book" />
Exemple 3
L’exemple suivant déclare ns comme préfixe d’espace de noms XML. Il utilise ensuite le préfixe de l’espace de noms pour créer un littéral XML et affiche le formulaire final de l’élément.
' Place Imports statements at the top of your program.
Imports <xmlns:ns="http://SomeNamespace">
Class TestClass1
Shared Sub TestPrefix()
' Create test using a global XML namespace prefix.
Dim inner2 = <ns:inner2/>
Dim test =
<ns:outer>
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1/>
<%= inner2 %>
</ns:middle>
</ns:outer>
' Display test to see its final form.
Console.WriteLine(test)
End Sub
End Class
Ce code affiche le texte suivant :
<ns:outer xmlns:ns="http://SomeNamespace">
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1 />
<inner2 xmlns="http://SomeNamespace" />
</ns:middle>
</ns:outer>
Notez que le compilateur a converti le préfixe de l’espace de noms XML global en définition de préfixe pour l’espace de noms XML. L’élément <ns :middle> redéfinit le préfixe d’espace de noms XML de l’élément <ns :inner1> . Toutefois, l’élément <ns :inner2> utilise l’espace de noms défini par l’instruction Imports .