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.
Kenmerken zijn naam-waardeparen die zijn gekoppeld aan een element. De XAttribute klasse vertegenwoordigt XML-kenmerken.
Werken met kenmerken in LINQ naar XML is vergelijkbaar met het werken met elementen. Hun bouwmethoden zijn vergelijkbaar. De methoden die u gebruikt om verzamelingen ervan op te halen, zijn vergelijkbaar. Een LINQ-queryexpressie voor een verzameling kenmerken lijkt op een LINQ-queryexpressie voor een verzameling elementen.
De volgorde waarin kenmerken aan een element zijn toegevoegd, blijft behouden. Dat wil gezegd dat wanneer u de kenmerken doorloopt, ze in dezelfde volgorde worden weergegeven als de toegevoegde kenmerken.
De constructor van XAttribute
De volgende constructor van de XAttribute klasse is de constructor die u het meest gebruikt:
| Constructeur | Beschrijving |
|---|---|
XAttribute(XName name, object content) |
Hiermee maakt u een XAttribute-object. Het name argument geeft de naam van het kenmerk op. content Hiermee geeft u de inhoud van het kenmerk op. |
Voorbeeld: Een element maken met een kenmerk
In het volgende voorbeeld ziet u de algemene taak voor het maken van een element dat een kenmerk bevat.
XElement phone = new XElement("Phone",
new XAttribute("Type", "Home"),
"555-555-5555");
Console.WriteLine(phone);
Dim phone As XElement = <Phone Type="Home">555-555-5555</Phone>
Console.WriteLine(phone)
In dit voorbeeld wordt de volgende uitvoer gegenereerd:
<Phone Type="Home">555-555-5555</Phone>
Voorbeeld: Functionele constructie van kenmerken
U kunt XAttribute-objecten gelijktijdig construeren met de constructie van XElement-objecten, zoals te zien in het volgende voorbeeld:
XElement c = new XElement("Customers",
new XElement("Customer",
new XElement("Name", "John Doe"),
new XElement("PhoneNumbers",
new XElement("Phone",
new XAttribute("type", "home"),
"555-555-5555"),
new XElement("Phone",
new XAttribute("type", "work"),
"666-666-6666")
)
)
);
Console.WriteLine(c);
Dim c As XElement = _
<Customers>
<Customer>
<Name>John Doe</Name>
<PhoneNumbers>
<Phone type="home">555-555-5555</Phone>
<Phone type="work">666-666-6666</Phone>
</PhoneNumbers>
</Customer>
</Customers>
Console.WriteLine(c)
In dit voorbeeld wordt de volgende uitvoer gegenereerd:
<Customers>
<Customer>
<Name>John Doe</Name>
<PhoneNumbers>
<Phone type="home">555-555-5555</Phone>
<Phone type="work">666-666-6666</Phone>
</PhoneNumbers>
</Customer>
</Customers>
Kenmerken zijn geen knooppunten
Er zijn enkele verschillen tussen kenmerken en elementen. XAttribute objecten zijn geen knooppunten in de XML-structuur. Het zijn naam-waardeparen die zijn gekoppeld aan een XML-element. In tegenstelling tot het Document Object Model (DOM) weerspiegelt dit de structuur van XML. Hoewel XAttribute objecten eigenlijk geen knooppunten in de XML-structuur zijn, is het werken met XAttribute objecten vergelijkbaar met het werken met XElement objecten.
Dit onderscheid is voornamelijk belangrijk voor ontwikkelaars die code schrijven die werkt met XML-structuren op knooppuntniveau. Veel ontwikkelaars maken zich geen zorgen over dit onderscheid.