Procedura: trovare un elemento figlio (XPath-LINQ to XML)

In questo argomento l'asse degli elementi figlio XPath viene confrontato con il metodo LINQ to XML Element.

L'espressione XPath è DeliveryNotes.

Esempio

In questo esempio viene trovato l'elemento figlio DeliveryNotes.

Nell'esempio viene utilizzato il seguente documento XML: File XML di esempio: Multiple Purchase Orders (LINQ to XML).

XDocument cpo = XDocument.Load("PurchaseOrders.xml");
XElement po = cpo.Root.Element("PurchaseOrder");

// LINQ to XML query
XElement el1 = po.Element("DeliveryNotes");

// XPath expression
XElement el2 = po.XPathSelectElement("DeliveryNotes");
// same as "child::DeliveryNotes"
// same as "./DeliveryNotes"

if (el1 == el2)
    Console.WriteLine("Results are identical");
else
    Console.WriteLine("Results differ");
Console.WriteLine(el1);
Dim cpo As XDocument = XDocument.Load("PurchaseOrders.xml")
Dim po As XElement = cpo.Root.<PurchaseOrder>.FirstOrDefault

'LINQ to XML query
Dim el1 As XElement = po.<DeliveryNotes>.FirstOrDefault

' XPath expression
Dim el2 As XElement = po.XPathSelectElement("DeliveryNotes")
' same as "child::DeliveryNotes"
' same as "./DeliveryNotes"

If el1 Is el2 Then
    Console.WriteLine("Results are identical")
Else
    Console.WriteLine("Results differ")
End If
Console.WriteLine(el1)

L'output ottenuto eseguendo l'esempio è il seguente:

Results are identical
<DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes>

Vedere anche

Concetti

LINQ to XML per utenti di XPath