다음을 통해 공유


XNode.IsBefore(XNode) 메서드

정의

문서 순서를 기준으로 현재 노드가 지정된 노드보다 앞에 나오는지 확인합니다.

public:
 bool IsBefore(System::Xml::Linq::XNode ^ node);
public bool IsBefore (System.Xml.Linq.XNode node);
public bool IsBefore (System.Xml.Linq.XNode? node);
member this.IsBefore : System.Xml.Linq.XNode -> bool
Public Function IsBefore (node As XNode) As Boolean

매개 변수

node
XNode

문서 순서를 비교할 XNode 입니다.

반환

Boolean

이 노드가 지정된 노드보다 앞에 나오면 true이고, 그렇지 않으면 false입니다.

예제

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

XElement xmlTree = new XElement("Root",  
    new XText("Text content."),  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XElement("Child3", "child3 content"),  
    new XText("More text content."),  
    new XElement("Child4", "child4 content"),  
    new XElement("Child5", "child5 content")  
);  
XElement child3 = xmlTree.Element("Child3");  
XElement child5 = xmlTree.Element("Child5");  
if (child5.IsBefore(child3))  
    Console.WriteLine("Child5 is before Child3");  
else  
    Console.WriteLine("Child5 is not before Child3");  
Dim xmlTree As XElement = _   
        <Root>Text content.  
            <Child1>child1 content</Child1>  
            <Child2>child2 content</Child2>  
            <Child3>child3 content</Child3>More text content.  
            <Child4>child4 content</Child4>  
            <Child5>child5 content</Child5>  
        </Root>  

Dim child3 As XElement = xmlTree.<Child3>(0)  
Dim child5 As XElement = xmlTree.<Child5>(0)  
If (child5.IsBefore(child3)) Then  
    Console.WriteLine("Child5 is before Child3")  
Else  
    Console.WriteLine("Child5 is not before Child3")  
End If  

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

Child5 is not before Child3  

설명

XContainer 식 노드는 자동으로 연결된 개체 목록 XNode 으로 저장됩니다. 즉, 메서드는 IsBefore 공통 부모를 발견할 때까지 비교되는 두 노드의 상위 항목을 트래버스해야 합니다. 그런 다음 공통 부모의 자식 노드 목록을 트래버스하여 비교할 두 노드의 순서를 결정해야 합니다. 따라서 이 메서드를 사용하면 성능에 영향을 줄 수 있습니다.

적용 대상

추가 정보