XPathNavigator.InsertElementBefore(String, String, String, String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt vor dem aktuellen Knoten ein neues nebengeordnetes 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 InsertElementBefore(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void InsertElementBefore (string prefix, string localName, string namespaceURI, string value);
public virtual void InsertElementBefore (string? prefix, string localName, string? namespaceURI, string? value);
abstract member InsertElementBefore : string * string * string * string -> unit
override this.InsertElementBefore : string * string * string * string -> unit
Public Overridable Sub InsertElementBefore (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
Die Position des XPathNavigator lässt nicht zu, dass ein neuer nebengeordneter Knoten vor dem aktuellen Knoten eingefügt wird.
Der XPathNavigator unterstützt keine Bearbeitung.
Beispiele
Im folgenden Beispiel wird vor dem untergeordneten pages
-Element des ersten price
-Element in der Datei book
ein neues contosoBooks.xml
-Element eingefügt.
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->InsertElementBefore(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.InsertElementBefore(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.InsertElementBefore(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")
navigator.MoveToParent()
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
Namespacepräfix- und URI-Werte können mithilfe der LookupPrefix -Methode oder LookupNamespace abgerufen werden. Die folgende Syntax fügt beispielsweise ein gleichgeordnetes Element mithilfe des Bereichs-Namespace xmlns:bk="http://www.contoso.com/books"
ein:
navigator.InsertElementBefore(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)
Dadurch wird das neue gleichgeordnete <bk:pages/>
Element erstellt.
Im Folgenden finden Sie wichtige Hinweise, die Sie bei der Verwendung der InsertElementBefore -Methode berücksichtigen sollten.
Wenn das angegebene Namespacepräfix oder String.Emptyist
null
, wird das Präfix für den Namespace-URI des neuen Elements aus den aktuellen Namespaces im Gültigkeitsbereich abgerufen. Wenn dem angegebenen Namespace-URI im aktuellen Bereich kein Namespacepräfix zugewiesen ist, wird automatisch ein Namespacepräfix generiert.Die InsertElementBefore -Methode ist nur gültig, wenn die XPathNavigator auf einem Element-, Text-, Verarbeitungsanweisungs- oder Kommentarknoten positioniert ist.
Die InsertElementBefore -Methode wirkt sich nicht auf die Position von aus XPathNavigator.