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

정의

지정된 값과 함께 네임스페이스 접두사, 로컬 이름 및 네임스페이스 URI를 사용하여 현재 노드의 자식 노드 목록 맨 앞에 새 자식 요소 노드를 만듭니다.Creates a new child element at the beginning of the list of child nodes of the current node using the namespace prefix, local name, and namespace URI specified with the value specified.

public:
 virtual void PrependChildElement(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void PrependChildElement (string prefix, string localName, string namespaceURI, string value);
abstract member PrependChildElement : string * string * string * string -> unit
override this.PrependChildElement : string * string * string * string -> unit
Public Overridable Sub PrependChildElement (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 current node the XPathNavigator is positioned on does not allow a new child node to be prepended.

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

예제

다음 예제에서는에서 새 pages 자식 요소 앞의 첫 번째 자식 요소 목록 시작 부분에 추가 됩니다 book 요소에는 contosoBooks.xml 파일입니다.In the following example, a new pages child element is prepended to the beginning of the list of child elements 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->PrependChildElement(navigator->Prefix, "pages", navigator->LookupNamespace(navigator->Prefix), "100");

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.PrependChildElement(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100");

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.PrependChildElement(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")

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>  
  

설명

현재 노드의 자식 노드 목록 맨 앞에 새 노드를 추가 자식 노드 앞에 추가 합니다.Prepending a child node adds the new node to the beginning of the list of child nodes for the current node. 예를 들어, 요소에 대 한 세 개의 자식 노드가 있는 경우 앞에 붙은 노드 첫 번째 자식 노드가 됩니다.For example, when three child nodes exist for an element, the prepended node becomes the first child node. 자식 노드가 없는 존재 하는 경우 새 자식 노드를 만들어집니다.If no child nodes exist, then a new child node is created.

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

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

새 자식 이렇게 <bk:pages/> 요소입니다.This creates the new child <bk:pages/> element.

다음은 사용 하는 경우를 고려해 야 할 중요 한 정보는 PrependChildElement 메서드.The following are important notes to consider when using the PrependChildElement 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.

  • 합니다 PrependChildElement 메서드는 경우에만 유효 합니다 XPathNavigator 요소 노드에 배치 됩니다.The PrependChildElement method is valid only when the XPathNavigator is positioned on an element node.

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

적용 대상