XPathNavigator.PrependChildElement(String, String, String, String) Methode

Definition

Erstellt am Anfang der Liste mit untergeordneten Knoten des aktuellen Knotens einen neues untergeordnetes Element mit dem angegebenen Wert. Dabei werden die angegebenen Werte für das Namespacepräfix, den lokalen Namen und den Namespace-URI verwendet.

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);
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)

Parameter

prefix
String

Das Namespacepräfix des neuen untergeordneten Elements (sofern vorhanden).

localName
String

Der lokale Name des neuen untergeordneten Elements (sofern vorhanden).

namespaceURI
String

Der Namespace-URI des neuen untergeordneten Elements (sofern vorhanden). Empty und null sind äquivalent.

value
String

Der Wert des neuen untergeordneten Elements. Beim Übergeben von Empty oder null wird ein leeres Element erstellt.

Ausnahmen

Der aktuelle Knoten, auf dem der XPathNavigator positioniert wird, lässt das Voranstellen eines neuen untergeordneten Knotens nicht zu.

Der XPathNavigator unterstützt keine Bearbeitung.

Beispiele

Im folgenden Beispiel wird dem Anfang der Liste der untergeordneten Elemente des ersten book Elements in der contosoBooks.xml Datei ein neues pages untergeordnetes Element vorangestellt.

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)

In diesem Beispiel wird die Datei contosoBooks.xml als Eingabe verwendet.

<?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>  

Hinweise

Bevor ein untergeordneter Knoten aussteht, wird der neue Knoten am Anfang der Liste der untergeordneten Knoten für den aktuellen Knoten hinzugefügt. Wenn beispielsweise drei untergeordnete Knoten für ein Element vorhanden sind, wird der vorab eingestellte Knoten zum ersten untergeordneten Knoten. Wenn keine untergeordneten Knoten vorhanden sind, wird ein neuer untergeordneter Knoten erstellt.

Namespacepräfix- und URI-Werte können mithilfe der LookupPrefix -Methode oder LookupNamespace abgerufen werden. Die folgende Syntax stellt z. B. ein untergeordnetes Element vor, indem sie den Namespace xmlns:bk="http://www.contoso.com/books"im Bereich verwendet:

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

Dadurch wird das neue untergeordnete <bk:pages/> Element erstellt.

Die folgenden wichtigen Hinweise sollten bei der Verwendung der PrependChildElement -Methode berücksichtigt werden.

  • Wenn das angegebene Namespacepräfix oder String.Emptyistnull, wird das Präfix für den Namespace-URI des neuen Elements aus den aktuellen Namespaces im Bereich abgerufen. Wenn dem angegebenen Namespace-URI im aktuellen Bereich kein Namespacepräfix zugewiesen ist, wird automatisch ein Namespacepräfix generiert.

  • Die PrependChildElement -Methode ist nur gültig, wenn die XPathNavigator auf einem Elementknoten positioniert ist.

  • Die PrependChildElement -Methode wirkt sich nicht auf die Position von aus XPathNavigator.

Gilt für: