Taal
Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt beschreven hoe u voorvoegsels voor naamruimten kunt beheren bij het serialiseren van een XML-structuur in C# en Visual Basic.
In veel situaties is het niet nodig om naamruimtevoorvoegsels te beheren. Voor bepaalde XML-programmeerprogramma's is dit echter vereist. U kunt bijvoorbeeld een XSLT-opmaakmodel of een XAML-document bewerken dat ingesloten XPath-expressies bevat die verwijzen naar specifieke naamruimtevoorvoegsels. In dat geval is het belangrijk dat het document met deze voorvoegsels wordt geserialiseerd. Dit is een veelvoorkomende reden voor het beheren van naamruimtevoorvoegsels.
Een andere reden is dat u wilt dat gebruikers het XML-document handmatig bewerken en dat u naamruimtevoorvoegsels wilt maken die handig zijn voor de gebruiker om te typen. U kunt bijvoorbeeld een XSD-document genereren. Conventies voor schema's stellen voor dat u het xsd voorvoegsel voor de schemanaamruimte gebruikt xs of als voorvoegsel.
Als u naamruimtevoorvoegsels wilt beheren, voegt u kenmerken in die naamruimten declareren. Als u de naamruimten met specifieke voorvoegsels declareert, probeert LINQ naar XML de voorvoegsels van de naamruimte te respecteren bij het serialiseren.
Als u een kenmerk wilt maken dat een naamruimte met een voorvoegsel declareert, maakt u een kenmerk waarin de naamruimte van de naam van het kenmerk is Xmlnsen de naam van het kenmerk het voorvoegsel van de naamruimte is. De waarde van het kenmerk is de URI van de naamruimte.
Voorbeeld: twee naamruimten maken met voorvoegsels
In dit voorbeeld worden twee naamruimten declareren. Hiermee geeft u het voorvoegsel aw voor de http://www.adventure-works.com naamruimte en het voorvoegsel fc voor de www.fourthcoffee.com naamruimte op.
XNamespace aw = "http://www.adventure-works.com";
XNamespace fc = "www.fourthcoffee.com";
XElement root = new XElement(aw + "Root",
new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),
new XAttribute(XNamespace.Xmlns + "fc", "www.fourthcoffee.com"),
new XElement(fc + "Child",
new XElement(aw + "DifferentChild", "other content")
),
new XElement(aw + "Child2", "c2 content"),
new XElement(fc + "Child3", "c3 content")
);
Console.WriteLine(root);
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
This example produces the following output:
```xml
<aw:Root xmlns:aw="http://www.adventure-works.com" xmlns:fc="www.fourthcoffee.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>