다음을 통해 공유


Extensions.XPathSelectElement 메서드

정의

XPath 식을 사용하여 XElement를 선택합니다.

오버로드

XPathSelectElement(XNode, String)

XPath 식을 사용하여 XElement를 선택합니다.

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

XPath 식을 사용하여 XElement를 선택하고 지정된 IXmlNamespaceResolver를 사용하여 네임스페이스 접두사를 확인합니다.

XPathSelectElement(XNode, String)

XPath 식을 사용하여 XElement를 선택합니다.

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

매개 변수

node
XNode

XPath 식을 평가할 XNode입니다.

expression
String

XPath 식을 포함하는 String입니다.

반환

XElement

XElement이거나 null입니다.

예제

다음 예제에서는 작은 XML 트리를 만들고 단일 요소를 선택하는 데 사용합니다 XPathSelectElement .

                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)  

이 예제는 다음과 같은 출력을 생성합니다.

<Child4>4</Child4>  

적용 대상

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

XPath 식을 사용하여 XElement를 선택하고 지정된 IXmlNamespaceResolver를 사용하여 네임스페이스 접두사를 확인합니다.

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

매개 변수

node
XNode

XPath 식을 평가할 XNode입니다.

expression
String

XPath 식을 포함하는 String입니다.

resolver
IXmlNamespaceResolver

XPath 식의 네임스페이스 접두사에 대한 IXmlNamespaceResolver입니다.

반환

XElement

XElement이거나 null입니다.

예제

다음 예제에서는 네임스페이스를 포함하는 XML 트리를 만듭니다. 여기에서는 XmlReader를 사용하여 XML 문서를 읽습니다. 그런 다음 XmlNameTable에서 XmlReader을 가져오고 XmlNamespaceManager에서 XmlNameTable를 가져옵니다. 요소를 선택할 때 사용합니다 XmlNamespaceManager .

                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)  

이 예제는 다음과 같은 출력을 생성합니다.

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

설명

이 메서드를 사용하여 네임스페이스 접두사가 포함된 XPath 식을 평가할 수 있습니다.

적용 대상