XNode.Ancestors XNode.Ancestors XNode.Ancestors XNode.Ancestors Method

정의

이 노드의 상위 요소 컬렉션을 반환합니다.Returns a collection of the ancestor elements of this node.

오버로드

Ancestors() Ancestors() Ancestors() Ancestors()

이 노드의 상위 요소 컬렉션을 반환합니다.Returns a collection of the ancestor elements of this node.

Ancestors(XName) Ancestors(XName) Ancestors(XName) Ancestors(XName)

이 노드의 필터링된 상위 요소 컬렉션을 반환합니다.Returns a filtered collection of the ancestor elements of this node. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.Only elements that have a matching XName are included in the collection.

설명

필요에 따라 특정 이름 가진 상위 요소를 필터링 하려면 노드 이름을 지정할 수 있습니다.Optionally a node name can be specified to filter for ancestor elements with a specific name.

반환된 컬렉션의 노드 순서는 문서와 반대입니다.The nodes in the returned collection are in reverse document order.

이 메서드는 지연된 실행을 사용합니다.This method uses deferred execution.

Ancestors() Ancestors() Ancestors() Ancestors()

이 노드의 상위 요소 컬렉션을 반환합니다.Returns a collection of the ancestor elements of this node.

public:
 System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Ancestors();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Ancestors ();
member this.Ancestors : unit -> seq<System.Xml.Linq.XElement>
Public Function Ancestors () As IEnumerable(Of XElement)

반환

이 노드의 상위 요소에 대한 IEnumerable<T>XElement입니다.An IEnumerable<T> of XElement of the ancestor elements of this node.

예제

다음 예제에서는이 메서드를 사용 하 여 노드의 상위 항목을 열거 합니다.The following example uses this method to enumerate the ancestors of a node.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",   
        new XElement("GrandChild", "content")  
    )  
);  
IEnumerable<XElement> grandChild = xmlTree.Descendants("GrandChild");  
foreach (XElement el in grandChild.Ancestors())  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child>  
                <GrandChild>content</GrandChild>  
            </Child>  
        </Root>  

Dim grandChild As IEnumerable(Of XElement) = xmlTree...<GrandChild>  
For Each el In grandChild.Ancestors()  
    Console.WriteLine(el.Name)  
Next  

이 예제는 다음과 같은 출력을 생성합니다.This example produces the following output:

Child  
Root  

설명

이 메서드는 결과에서 자신을 반환 하지 않습니다.This method does not return itself in the results.

반환된 컬렉션의 노드 순서는 문서와 반대입니다.The nodes in the returned collection are in reverse document order.

이 메서드는 지연된 실행을 사용합니다.This method uses deferred execution.

추가 정보

Ancestors(XName) Ancestors(XName) Ancestors(XName) Ancestors(XName)

이 노드의 필터링된 상위 요소 컬렉션을 반환합니다.Returns a filtered collection of the ancestor elements of this node. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.Only elements that have a matching XName are included in the collection.

public:
 System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Ancestors(System::Xml::Linq::XName ^ name);
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Ancestors (System.Xml.Linq.XName name);
member this.Ancestors : System.Xml.Linq.XName -> seq<System.Xml.Linq.XElement>
Public Function Ancestors (name As XName) As IEnumerable(Of XElement)

매개 변수

name
XName XName XName XName

일치시킬 XName입니다.The XName to match.

반환

이 노드의 상위 요소에 대한 IEnumerable<T>XElement입니다.An IEnumerable<T> of XElement of the ancestor elements of this node. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.Only elements that have a matching XName are included in the collection.

반환된 컬렉션의 노드 순서는 문서와 반대입니다.The nodes in the returned collection are in reverse document order.

이 메서드는 지연된 실행을 사용합니다.This method uses deferred execution.

예제

다음 예제에서는이 메서드를 사용합니다.The following example uses this method.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",   
        new XElement("GrandChild", "content")  
    )  
);  
IEnumerable<XElement> grandChild = xmlTree.Descendants("GrandChild");  
foreach (XElement el in grandChild.Ancestors("Child"))  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child>  
                <GrandChild>content</GrandChild>  
            </Child>  
        </Root>  

Dim grandChild As IEnumerable(Of XElement) = xmlTree...<GrandChild>  
For Each el In grandChild.Ancestors("Child")  
    Console.WriteLine(el.Name)  
Next  

이 예제는 다음과 같은 출력을 생성합니다.This example produces the following output:

Child  

설명

이 메서드는 결과에서 자신을 반환 하지 않습니다.This method will not return itself in the results.

추가 정보

적용 대상