다음을 통해 공유


XNode.NodesBeforeSelf 메서드

정의

이 노드 앞에 있는 형제 노드의 컬렉션을 문서 순으로 반환합니다.

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

반환

이 노드 앞에 있는 형제 노드에 대한 IEnumerable<T>의 문서 순 XNode입니다.

예제

다음 예제에서는 XML 트리를 만든 다음 이 축 메서드를 사용하여 트리를 쿼리합니다.

XElement xmlTree = new XElement("Root",  
    new XText("Text content."),  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XText("More text content."),  
    new XElement("child3", "child3 content")  
);  
XElement child = xmlTree.Element("Child2");  
IEnumerable<XNode> nodes =  
    from node in child.NodesBeforeSelf()  
    select node;  
foreach (XNode node in nodes)  
    Console.WriteLine("Node type: {0}  {1}",  
        node.NodeType,  
        node.NodeType == XmlNodeType.Text ? (node as XText).Value : "");  
Dim xmlTree As XElement = New XElement("Root", _  
    New XText("Text content."), _  
    New XElement("Child1", "child1 content"), _  
    New XElement("Child2", "child2 content"), _  
    New XText("More text content."), _  
    New XElement("child3", "child3 content") _  
)  

Dim child As XElement = xmlTree.Element("Child2")  
Dim nodes As IEnumerable(Of XNode) = _  
    From node In child.NodesBeforeSelf() _  
    Select node  
For Each node As XNode In nodes  
    Dim s As String = ""  
    If node.NodeType = XmlNodeType.Text Then  
        s = DirectCast(node, XText).Value  
    End If  
    Console.WriteLine("Node type: {0}  {1}", node.NodeType, s)  
Next  

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

Node type: Text  Text content.  
Node type: Element  

설명

이 메서드는 반환된 컬렉션에 형제만 포함합니다. 하위 항목은 포함되지 않습니다.

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

적용 대상

추가 정보