Vorgehensweise: Abrufen des Werts eines Attributs (LINQ to XML) (C#)How to: Retrieve the Value of an Attribute (LINQ to XML) (C#)

In diesem Thema wird gezeigt, wie Sie den Wert von Attributen abrufen können.This topic shows how to obtain the value of attributes. Im Wesentlichen gibt es dafür zwei Möglichkeiten: Sie können ein XAttribute in den gewünschten Typ umwandeln. Die Umwandlung des Inhalts des Elements oder Attributs in den angegebenen Typ erfolgt dann durch den expliziten Konvertierungsoperator.There are two main ways: You can cast an XAttribute to the desired type; the explicit conversion operator then converts the contents of the element or attribute to the specified type. Die andere Möglichkeit besteht darin, die Value-Eigenschaft zu verwenden.Alternatively, you can use the Value property. In der Regel empfiehlt sich aber die Verwendung des Umwandlungsverfahrens.However, casting is generally the better approach. Wenn Sie das Attribut in einen Typ umwandeln, der NULL-Werte zulässt, ist der Code für das Abrufen des Werts eines Attributs, von dem nicht genau bekannt ist, ob es überhaupt vorhanden ist, einfacher zu schreiben.If you cast the attribute to a nullable type, the code is simpler to write when retrieving the value of an attribute that might or might not exist. Beispiele für dieses Verfahren finden Sie unter How to: Retrieve the Value of an Element (LINQ to XML) (C#) (Vorgehensweise: Abrufen des Werts eines Elements (LINQ to XML) (C#)).For examples of this technique, see How to: Retrieve the Value of an Element (LINQ to XML) (C#).

BeispielExample

Zum Abrufen des Werts eines Attributs wandeln Sie einfach nur das XAttribute-Objekt in den gewünschten Typ um.To retrieve the value of an attribute, you just cast the XAttribute object to your desired type.

XElement root = new XElement("Root",  
                    new XAttribute("Attr", "abcde")  
                );  
Console.WriteLine(root);  
string str = (string)root.Attribute("Attr");  
Console.WriteLine(str);  

Dieses Beispiel erzeugt die folgende Ausgabe:This example produces the following output:

<Root Attr="abcde" />  
abcde  

BeispielExample

Im folgenden Beispiel wird gezeigt, wie Sie den Wert eines Attributs für den Fall abrufen können, dass sich das Attribut in einem Namespace befindet.The following example shows how to retrieve the value of an attribute where the attribute is in a namespace. Weitere Informationen finden Sie unter Working with XML Namespaces (C#) (Arbeiten mit XML-Namespaces (C#)).For more information, see Working with XML Namespaces (C#).

XNamespace aw = "http://www.adventure-works.com";  
XElement root = new XElement(aw + "Root",  
                    new XAttribute(aw + "Attr", "abcde")  
                );  
string str = (string)root.Attribute(aw + "Attr");  
Console.WriteLine(str);  

Dieses Beispiel erzeugt die folgende Ausgabe:This example produces the following output:

abcde  

Siehe auchSee Also

LINQ to XML Axes (C#) (LINQ to XML-Achsen (C#))LINQ to XML Axes (C#)