다음을 통해 공유


XElement.AncestorsAndSelf 메서드

정의

이 요소와 이 요소의 상위 요소가 포함된 요소 컬렉션을 반환합니다.

오버로드

AncestorsAndSelf()

이 요소와 이 요소의 상위 요소가 포함된 요소 컬렉션을 반환합니다.

AncestorsAndSelf(XName)

이 요소와 이 요소의 상위 요소가 들어 있는 필터링된 요소 컬렉션을 반환합니다. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.

설명

반환된 컬렉션의 요소는 역순으로 정렬됩니다.

이 메서드는 지연된 실행을 사용합니다.

AncestorsAndSelf()

이 요소와 이 요소의 상위 요소가 포함된 요소 컬렉션을 반환합니다.

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

반환

IEnumerable<XElement>

이 요소와 이 요소의 상위 요소가 들어 있는 IEnumerable<T>XElement입니다.

예제

다음 예제에서는 XML 트리를 만듭니다. 그런 다음 요소를 찾 GrandChild 은 다음 해당 요소의 상위 항목을 인쇄합니다.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",  
        new XElement("GrandChild", "element content")  
    )  
);  
XElement gc = xmlTree.Element("Child").Element("GrandChild");  
IEnumerable<XElement> aas =  
    from el in gc.AncestorsAndSelf()  
    select el;  
foreach (XElement el in aas)  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
    <Root>  
        <Child>  
            <GrandChild>element content</GrandChild>  
        </Child>  
    </Root>  

Dim GC As XElement = xmlTree.<Child>.<GrandChild>(0)  

Dim aas As IEnumerable(Of XElement) = _  
    From el In GC.AncestorsAndSelf() _  
    Select el  

For Each el In aas  
    Console.WriteLine(el.Name)  
Next  

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

GrandChild  
Child  
Root  

설명

반환된 컬렉션의 요소는 역순으로 정렬됩니다.

이 메서드는 지연된 실행을 사용합니다.

추가 정보

적용 대상

AncestorsAndSelf(XName)

이 요소와 이 요소의 상위 요소가 들어 있는 필터링된 요소 컬렉션을 반환합니다. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.

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

매개 변수

name
XName

일치시킬 XName입니다.

반환

IEnumerable<XElement>

이 요소와 이 요소의 상위 요소가 들어 있는 IEnumerable<T>XElement입니다. 일치하는 XName이 있는 요소만 컬렉션에 포함됩니다.

예제

다음 예제에서는 이를 사용합니다.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",  
        new XElement("GrandChild", "element content")  
    )  
);  
XElement gc = xmlTree.Element("Child").Element("GrandChild");  
IEnumerable<XElement> aas = gc.AncestorsAndSelf("Child");  
foreach (XElement el in aas)  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
    <Root>  
        <Child>  
            <GrandChild>element content</GrandChild>  
        </Child>  
    </Root>  

Dim GC As XElement = xmlTree.<Child>.<GrandChild>(0)  
Dim aas As IEnumerable(Of XElement) = GC.AncestorsAndSelf("Child")  
For Each el In aas  
    Console.WriteLine(el.Name)  
Next  

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

Child  

설명

반환된 컬렉션의 요소는 역방향 문서 순서입니다.

이 메서드는 지연된 실행을 사용합니다.

추가 정보

적용 대상