XPathNavigator.InsertElementAfter(String, String, String, String) 메서드

정의

지정된 값과 함께 네임스페이스 접두사, 로컬 이름 및 네임스페이스 URI를 사용하여 현재 노드 뒤에 새 형제 요소를 만듭니다.Creates a new sibling element after the current node using the namespace prefix, local name and namespace URI specified, with the value specified.

public:
 virtual void InsertElementAfter(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void InsertElementAfter (string prefix, string localName, string namespaceURI, string value);
abstract member InsertElementAfter : string * string * string * string -> unit
override this.InsertElementAfter : string * string * string * string -> unit
Public Overridable Sub InsertElementAfter (prefix As String, localName As String, namespaceURI As String, value As String)

매개 변수

prefix
String

새 자식 요소의 네임스페이스 접두사입니다(있는 경우).The namespace prefix of the new child element (if any).

localName
String

새 자식 요소의 로컬 이름입니다(있는 경우).The local name of the new child element (if any).

namespaceURI
String

새 자식 요소의 네임스페이스 URI입니다(있는 경우).The namespace URI of the new child element (if any). Emptynull는 동일합니다.Empty and null are equivalent.

value
String

새 자식 요소의 값입니다.The value of the new child element. Empty 또는 null을 전달하면 빈 요소가 생성됩니다.If Empty or null are passed, an empty element is created.

예외

XPathNavigator 위치에서는 현재 노드 뒤에 새로운 형제 노드를 삽입할 수 없습니다.The position of the XPathNavigator does not allow a new sibling node to be inserted after the current node.

XPathNavigator에서는 편집을 지원하지 않습니다.The XPathNavigator does not support editing.

예제

다음 예제에서는 새 pages 요소 뒤에 삽입 됩니다 합니다 price 첫 번째 자식 요소 book 요소에는 contosoBooks.xml 파일입니다.In the following example a new pages element is inserted after the price child element of the first book element in the contosoBooks.xml file.

XmlDocument^ document = gcnew XmlDocument();
document->Load("contosoBooks.xml");
XPathNavigator^ navigator = document->CreateNavigator();

navigator->MoveToChild("bookstore", "http://www.contoso.com/books");
navigator->MoveToChild("book", "http://www.contoso.com/books");
navigator->MoveToChild("price", "http://www.contoso.com/books");

navigator->InsertElementAfter(navigator->Prefix, "pages", navigator->LookupNamespace(navigator->Prefix), "100");

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

navigator.InsertElementAfter(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100");

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

navigator.InsertElementAfter(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

이 예제에서는 contosoBooks.xml 파일을 입력으로 사용합니다.The example takes the contosoBooks.xml file as an input.

  
<?xml version="1.0" encoding="utf-8" ?>  
<bookstore xmlns="http://www.contoso.com/books">  
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">  
        <title>The Autobiography of Benjamin Franklin</title>  
        <author>  
            <first-name>Benjamin</first-name>  
            <last-name>Franklin</last-name>  
        </author>  
        <price>8.99</price>  
    </book>  
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">  
        <title>The Confidence Man</title>  
        <author>  
            <first-name>Herman</first-name>  
            <last-name>Melville</last-name>  
        </author>  
        <price>11.99</price>  
    </book>  
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">  
        <title>The Gorgias</title>  
        <author>  
            <name>Plato</name>  
        </author>  
        <price>9.99</price>  
    </book>  
</bookstore>  
  

설명

Namespace 접두사 및 URI 값 가져올 수 있습니다 사용 하 여 LookupPrefix 또는 LookupNamespace 메서드.Namespace prefix and URI values can be obtained using the LookupPrefix or LookupNamespace method. 다음 구문을 범위에서 네임 스페이스를 사용 하 여 형제 요소를 삽입 하는 예를 들어 xmlns:bk="http://www.contoso.com/books":For example, the following syntax inserts a sibling element by using the in-scope namespace xmlns:bk="http://www.contoso.com/books":

navigator.InsertElementAfter(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)  

새 형제 노드를 만들고이 <bk:pages/> 요소입니다.This creates the new sibling <bk:pages/> element.

다음은 사용 하는 경우를 고려해 야 할 중요 한 정보는 InsertElementAfter 메서드.The following are important notes to consider when using the InsertElementAfter method.

  • 지정 된 네임 스페이스 접두사 이면 null 또는 String.Empty, 네임 스페이스 URI는 새 요소에 대 한 접두사는 현재 범위에서 네임 스페이스에서 가져온 다음입니다.If the namespace prefix specified is null or String.Empty, then the prefix for the namespace URI of the new element is obtained from the current namespaces in-scope. 지정된 된 네임 스페이스 URI 현재 범위에서 할당할 네임 스페이스 접두사가 없으면 네임 스페이스 접두사를 자동으로 생성 됩니다.If there is no namespace prefix assigned to the specified namespace URI at the current scope, then a namespace prefix is automatically generated.

  • 합니다 InsertElementAfter 메서드는 경우에만 유효 합니다 XPathNavigator 요소, 텍스트, 처리 명령 또는 주석 노드에 배치 됩니다.The InsertElementAfter method is valid only when the XPathNavigator is positioned on an element, text, processing instruction, or comment node.

  • 합니다 InsertElementAfter 메서드의 위치에 영향을 주지 않습니다는 XPathNavigator합니다.The InsertElementAfter method does not affect the position of the XPathNavigator.

적용 대상