Vorgehensweise: Suchen eines Attributs eines übergeordneten Elements (XPath-LINQ to XML) (C#)

In diesem Thema wird gezeigt, wie Sie zum übergeordneten Element navigieren und nach einem Attribut dieses übergeordneten Elements suchen können.

Der XPath-Ausdruck lautet:

../@id

Beispiel

Dieses Beispiel sucht zuerst nach einem Author-Element. Anschließend wird das id-Attribut des übergeordneten Elements ermittelt.

In diesem Beispiel wird das folgende XML-Dokument verwendet: Beispiel-XML-Datei: Bücher (LINQ to XML).

XDocument books = XDocument.Load("Books.xml");  

XElement author =   
    books  
    .Root  
    .Element("Book")  
    .Element("Author");  

// LINQ to XML query  
XAttribute att1 =  
    author  
    .Parent  
    .Attribute("id");  

// XPath expression  
XAttribute att2 = ((IEnumerable)author.XPathEvaluate("../@id")).Cast<XAttribute>().First();  

if (att1 == att2)  
    Console.WriteLine("Results are identical");  
else  
    Console.WriteLine("Results differ");  
Console.WriteLine(att1);  

Dieses Beispiel erzeugt die folgende Ausgabe:

Results are identical  
id="bk101"  

Siehe auch

LINQ to XML für XPath-Benutzer (C#)