Comment : incorporer des expressions dans des littéraux XML (Visual Basic)
Vous pouvez combiner des littéraux XML avec des expressions incorporées pour créer un document, un fragment ou un élément XML qui contient du contenu créé au moment de l’exécution. Les exemples suivants montrent comment utiliser des expressions incorporées pour remplir le contenu, les attributs et les noms d’éléments au moment de l’exécution.
La syntaxe d’une expression incorporée est <%=
exp
%>
, qui est la même que celle utilisée par ASP.NET. Pour plus d’informations, consultez Expressions incorporées dans XML.
Vous pouvez également utiliser les API LINQ to XML pour créer des objets LINQ to XML. Pour plus d’informations, consultez XElement.
Procédures
Pour insérer du texte en tant que contenu d’élément
L’exemple suivant montre comment insérer le texte contenu dans la variable
contactName
entre les éléments de nom ouvrant et fermant.Dim contactName As String = "Patrick Hines" Dim contact As XElement = <contact> <name><%= contactName %></name> </contact> Console.WriteLine(contact)
Cet exemple produit la sortie suivante :
<contact> <name>Patrick Hines</name> </contact>
Pour insérer du texte en tant que valeur d’attribut
L’exemple suivant montre comment insérer le texte contenu dans la variable
phoneType
en tant que valeur de l’attributtype
.Dim phoneType As String = "home" Dim contact2 As XElement = <contact> <phone type=<%= phoneType %>>206-555-0144</phone> </contact> Console.WriteLine(contact2)
Cet exemple produit la sortie suivante :
<contact> <phone type="home">206-555-0144</phone> </contact>
Pour insérer du texte pour un nom d’élément
L’exemple suivant montre comment insérer le texte contenu dans la variable
elementName
comme nom d’un élément.Lorsque vous créez des éléments à l’aide de cette technique, vous devez les fermer avec la balise </>.
Dim elementName As String = "contact" Dim contact3 As XElement = <<%= elementName %>> <name>Patrick Hines</name> </> Console.WriteLine(contact3)
Cet exemple produit la sortie suivante :
<contact> <name>Patrick Hines</name> </contact>