Lire en anglais

Partager via


Comment créer un document avec des espaces de noms en Visual Basic (LINQ to XML)

Cet article montre comment créer un document avec des espaces de noms dans Visual Basic.

Lorsque vous utilisez des littéraux XML en Visual Basic, les utilisateurs peuvent définir un espace de noms XML global par défaut. Cet espace de noms est l'espace de noms par défaut pour les littéraux XML et les propriétés XML. L'espace de noms XML par défaut peut être défini au niveau projet ou au niveau fichier. S'il est défini au niveau fichier, il remplace l'espace de noms par défaut défini au niveau projet.

Vous pouvez également définir d'autres espaces de noms et spécifier les préfixes d'espaces de noms de ces espaces de noms. Vous utilisez le mot clé Imports pour définir les deux types d’espace de noms.

Pour plus d’informations, consultez littéraux XML dans Visual Basic.

Notez que l'espace de noms XML par défaut s'applique uniquement aux éléments, et non aux attributs. Les attributs sont par défaut dans l’espace de noms par défaut. Toutefois, vous pouvez utiliser un préfixe d'espace de noms pour placer un attribut dans un espace de noms.

Exemple : Créer un document qui a un espace de noms

Cet exemple crée un document qui contient un espace de noms.

VB
Imports <xmlns:aw="http://www.adventure-works.com">
Module Module1
    Sub Main()
        Dim root As XElement = _
            <aw:Root>
                <aw:Child aw:Att="attvalue"/>
            </aw:Root>
        Console.WriteLine(root)
    End Sub
End Module

Cet exemple produit la sortie suivante :

XML
<aw:Root xmlns:aw="http://www.adventure-works.com">
  <aw:Child aw:Att="attvalue" />
</aw:Root>

Exemple : Créer un document qui a deux espaces de noms, un avec un préfixe

Cet exemple crée un document qui contient deux espaces de noms. L’un est l’espace de noms par défaut, l’autre a un préfixe.

VB
Imports <xmlns="http://www.adventure-works.com">
Imports <xmlns:fc="www.fourthcoffee.com">

Module Module1

    Sub Main()
        Dim root As XElement = _
            <Root>
                <Child Att="attvalue"/>
                <fc:Child2>child2 content</fc:Child2>
            </Root>
        Console.WriteLine(root)
    End Sub

End Module

Cet exemple produit la sortie suivante :

XML
<Root xmlns:fc="www.fourthcoffee.com" xmlns="http://www.adventure-works.com">
  <Child Att="attvalue" />
  <fc:Child2>child2 content</fc:Child2>
</Root>

Exemple : Créer un document qui a deux espaces de noms, les deux avec des préfixes

L'exemple suivant crée un document qui contient deux espaces de noms, tous deux ayant des préfixes d'espaces de noms.

Lors de la sérialisation d'une arborescence XML, LINQ to XML émet des déclarations d'espaces de noms selon les besoins, de sorte que chaque élément soit dans son espace de noms désigné.

VB
Imports <xmlns:aw="http://www.adventure-works.com">
Imports <xmlns:fc="www.fourthcoffee.com">

Module Module1

    Sub Main()
        Dim root As XElement = _
            <aw:Root>
                <fc:Child>
                    <aw:DifferentChild>other content</aw:DifferentChild>
                </fc:Child>
                <aw:Child2>c2 content</aw:Child2>
                <fc:Child3>c3 content</fc:Child3>
            </aw:Root>
        Console.WriteLine(root)
    End Sub

End Module

Cet exemple produit la sortie suivante :

XML
<aw:Root xmlns:fc="www.fourthcoffee.com" xmlns:aw="http://www.adventure-works.com">
  <fc:Child>
    <aw:DifferentChild>other content</aw:DifferentChild>
  </fc:Child>
  <aw:Child2>c2 content</aw:Child2>
  <fc:Child3>c3 content</fc:Child3>
</aw:Root>

Voir aussi