Extensions.XPathSelectElement Méthode

Définition

Sélectionne un XElement à l'aide d'une expression XPath.

Surcharges

XPathSelectElement(XNode, String)

Sélectionne un XElement à l'aide d'une expression XPath.

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

Sélectionne un XElement à l'aide d'une expression XPath, en résolvant les préfixes d'espace de noms à l'aide du IXmlNamespaceResolver spécifié.

XPathSelectElement(XNode, String)

Sélectionne un XElement à l'aide d'une expression XPath.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Xml::Linq::XElement ^ XPathSelectElement(System::Xml::Linq::XNode ^ node, System::String ^ expression);
public static System.Xml.Linq.XElement? XPathSelectElement (this System.Xml.Linq.XNode node, string expression);
public static System.Xml.Linq.XElement XPathSelectElement (this System.Xml.Linq.XNode node, string expression);
static member XPathSelectElement : System.Xml.Linq.XNode * string -> System.Xml.Linq.XElement
<Extension()>
Public Function XPathSelectElement (node As XNode, expression As String) As XElement

Paramètres

node
XNode

XNode sur lequel évaluer l'expression XPath.

expression
String

String qui contient une expression XPath.

Retours

XElement

XElement ou null.

Exemples

L’exemple suivant crée une petite arborescence XML et utilise XPathSelectElement pour sélectionner un seul élément.

                XElement root = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5),  
    new XElement("Child6", 6)  
);  
XElement el = root.XPathSelectElement("./Child4");  
Console.WriteLine(el);  
                Dim root As XElement = _  
    <Root>  
        <Child1>1</Child1>  
        <Child2>2</Child2>  
        <Child3>3</Child3>  
        <Child4>4</Child4>  
        <Child5>5</Child5>  
        <Child6>6</Child6>  
    </Root>  
Dim el As XElement = root.XPathSelectElement("./Child4")  
Console.WriteLine(el)  

Cet exemple produit la sortie suivante :

<Child4>4</Child4>  

S’applique à

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

Sélectionne un XElement à l'aide d'une expression XPath, en résolvant les préfixes d'espace de noms à l'aide du IXmlNamespaceResolver spécifié.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Xml::Linq::XElement ^ XPathSelectElement(System::Xml::Linq::XNode ^ node, System::String ^ expression, System::Xml::IXmlNamespaceResolver ^ resolver);
public static System.Xml.Linq.XElement? XPathSelectElement (this System.Xml.Linq.XNode node, string expression, System.Xml.IXmlNamespaceResolver? resolver);
public static System.Xml.Linq.XElement XPathSelectElement (this System.Xml.Linq.XNode node, string expression, System.Xml.IXmlNamespaceResolver resolver);
static member XPathSelectElement : System.Xml.Linq.XNode * string * System.Xml.IXmlNamespaceResolver -> System.Xml.Linq.XElement
<Extension()>
Public Function XPathSelectElement (node As XNode, expression As String, resolver As IXmlNamespaceResolver) As XElement

Paramètres

node
XNode

XNode sur lequel évaluer l'expression XPath.

expression
String

String qui contient une expression XPath.

resolver
IXmlNamespaceResolver

IXmlNamespaceResolver pour les préfixes d'espace de noms dans l'expression XPath.

Retours

XElement

XElement ou null.

Exemples

L’exemple suivant crée une arborescence XML qui contient un espace de noms. Il utilise un objet XmlReader pour lire le document XML. Il obtient ensuite un objet XmlNameTable à partir de l'objet XmlReader et un objetXmlNamespaceManager à partir de l'objet XmlNameTable. Il utilise le XmlNamespaceManager moment de la sélection d’un élément.

                string markup = @"  
<aw:Root xmlns:aw='http://www.adventure-works.com'>  
    <aw:Child1>child one data</aw:Child1>  
    <aw:Child2>child two data</aw:Child2>  
</aw:Root>";  
XmlReader reader = XmlReader.Create(new StringReader(markup));  
XElement root = XElement.Load(reader);  
XmlNameTable nameTable = reader.NameTable;  
XmlNamespaceManager namespaceManager = new XmlNamespaceManager(nameTable);  
namespaceManager.AddNamespace("aw", "http://www.adventure-works.com");  
XElement child1 = root.XPathSelectElement("./aw:Child1", namespaceManager);  
Console.WriteLine(child1);  
                Dim markup As XElement = _  
    <aw:Root xmlns:aw='http://www.adventure-works.com'>  
        <aw:Child1>child one data</aw:Child1>  
        <aw:Child2>child two data</aw:Child2>  
    </aw:Root>  
Dim reader As XmlReader = markup.CreateReader  
Dim nameTable As XmlNameTable = reader.NameTable  
Dim namespaceManager As XmlNamespaceManager = New XmlNamespaceManager(nameTable)  
namespaceManager.AddNamespace("aw", "http://www.adventure-works.com")  
Dim child1 As XElement = markup.XPathSelectElement("./aw:Child1", namespaceManager)  
Console.WriteLine(child1)  

Cet exemple produit la sortie suivante :

<aw:Child1 xmlns:aw="http://www.adventure-works.com">child one data</aw:Child1>  

Remarques

Vous pouvez utiliser cette méthode pour évaluer les expressions XPath qui contiennent des préfixes d’espace de noms.

S’applique à