XPathNavigator.InsertBefore 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 einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten.
Überlädt
InsertBefore() |
Gibt ein XmlWriter-Objekt zurück, mit dem ein neuer nebengeordneter Knoten vor dem gegenwärtig ausgewählten Knoten erstellt werden kann. |
InsertBefore(String) |
Erstellt unter Verwendung der angegebenen XML-Zeichenfolge einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten. |
InsertBefore(XmlReader) |
Erstellt mit dem XML-Inhalt des angegebenen XmlReader-Objekts einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten. |
InsertBefore(XPathNavigator) |
Erstellt mithilfe der Knoten im XPathNavigator einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten. |
InsertBefore()
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Gibt ein XmlWriter-Objekt zurück, mit dem ein neuer nebengeordneter Knoten vor dem gegenwärtig ausgewählten Knoten erstellt werden kann.
public:
virtual System::Xml::XmlWriter ^ InsertBefore();
public virtual System.Xml.XmlWriter InsertBefore ();
abstract member InsertBefore : unit -> System.Xml.XmlWriter
override this.InsertBefore : unit -> System.Xml.XmlWriter
Public Overridable Function InsertBefore () As XmlWriter
Gibt zurück
Ein XmlWriter-Objekt, mit dem ein neuer nebengeordneter Knoten vor dem gegenwärtig ausgewählten Knoten erstellt werden kann.
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 ein neues pages
Element vor dem price
untergeordneten Element des ersten book
Elements in der Datei eingefügt, wobei das XmlWritercontosoBooks.xml
von der InsertBefore -Methode zurückgegebene Objekt verwendet wird.
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");
XmlWriter^ pages = navigator->InsertBefore();
pages->WriteElementString("pages", "100");
pages->Close();
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");
XmlWriter pages = navigator.InsertBefore();
pages.WriteElementString("pages", "100");
pages.Close();
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")
Dim pages As XmlWriter = navigator.InsertBefore()
pages.WriteElementString("pages", "100")
pages.Close()
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
Die folgenden wichtigen Hinweise sollten bei der Verwendung der InsertBefore -Methode berücksichtigt werden.
Der neue gleichgeordnete Knoten wird erst eingefügt, wenn die Close -Methode des XmlWriter -Objekts aufgerufen wird.
Die InsertBefore -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Die InsertBefore -Methode wirkt sich nicht auf die Position von aus XPathNavigator.
Gilt für:
InsertBefore(String)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Erstellt unter Verwendung der angegebenen XML-Zeichenfolge einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten.
public:
virtual void InsertBefore(System::String ^ newSibling);
public virtual void InsertBefore (string newSibling);
abstract member InsertBefore : string -> unit
override this.InsertBefore : string -> unit
Public Overridable Sub InsertBefore (newSibling As String)
Parameter
- newSibling
- String
Die Zeichenfolge mit XML-Daten für den neuen nebengeordneten Knoten.
Ausnahmen
Der XML-Zeichenfolgenparameter ist null
.
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.
Der XML-Zeichenfolgenparameter ist nicht ordnungsgemäß formatiert.
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->InsertBefore("<pages>100</pages>");
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.InsertBefore("<pages>100</pages>");
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.InsertBefore("<pages>100</pages>")
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
Um einen neuen Elementknoten zu erstellen, schließen Sie die gesamte XML-Syntax in den XML-Zeichenfolgenparameter ein. Die Zeichenfolge für einen neuen book
Knoten ist InsertBefore("<book/>")
. Die Zeichenfolge zum Einfügen des Texts "Book" vor dem Textknoten des aktuellen Knotens ist InsertBefore("book")
. Wenn die XML-Zeichenfolge mehrere Knoten enthält, werden alle Knoten hinzugefügt.
Die folgenden wichtigen Hinweise sollten bei der Verwendung der InsertBefore -Methode berücksichtigt werden.
Die InsertBefore -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Die InsertBefore -Methode wirkt sich nicht auf die Position von aus XPathNavigator.
Gilt für:
InsertBefore(XmlReader)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Erstellt mit dem XML-Inhalt des angegebenen XmlReader-Objekts einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten.
public:
virtual void InsertBefore(System::Xml::XmlReader ^ newSibling);
public virtual void InsertBefore (System.Xml.XmlReader newSibling);
abstract member InsertBefore : System.Xml.XmlReader -> unit
override this.InsertBefore : System.Xml.XmlReader -> unit
Public Overridable Sub InsertBefore (newSibling As XmlReader)
Parameter
- newSibling
- XmlReader
Ein XmlReader-Objekt, das auf den XML-Daten für den neuen nebengeordneten Knoten positioniert ist.
Ausnahmen
Das XmlReader-Objekt befindet sich in einem Fehlerzustand oder wurde geschlossen.
Der XmlReader-Objektparameter ist null
.
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.
Der XML-Inhalt des XmlReader-Objektparameters ist nicht ordnungsgemäß formatiert.
Beispiele
Im folgenden Beispiel wird ein neues pages
Element vor dem price
untergeordneten Element des ersten book
Elements in der contosoBooks.xml
Datei unter Verwendung des XmlReader angegebenen -Objekts eingefügt. Der http://www.contoso.com/books
Namespace wird angegeben, sodass das neue gleichgeordnete Element mit demselben Namespace wie das XML-Dokument eingefügt wird.
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");
XmlReader^ pages = XmlReader::Create(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
navigator->InsertBefore(pages);
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");
XmlReader pages = XmlReader.Create(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
navigator.InsertBefore(pages);
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")
Dim pages As XmlReader = XmlReader.Create(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
navigator.InsertBefore(pages)
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
Die folgenden wichtigen Hinweise sollten bei der Verwendung der InsertBefore -Methode berücksichtigt werden.
Wenn das XmlReader Objekt über einer Sequenz von XML-Knoten positioniert ist, werden alle Knoten in der Sequenz hinzugefügt.
Die InsertBefore -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Die InsertBefore -Methode wirkt sich nicht auf die Position von aus XPathNavigator.
Gilt für:
InsertBefore(XPathNavigator)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Erstellt mithilfe der Knoten im XPathNavigator einen neuen nebengeordneten Knoten vor dem gegenwärtig ausgewählten Knoten.
public:
virtual void InsertBefore(System::Xml::XPath::XPathNavigator ^ newSibling);
public virtual void InsertBefore (System.Xml.XPath.XPathNavigator newSibling);
abstract member InsertBefore : System.Xml.XPath.XPathNavigator -> unit
override this.InsertBefore : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub InsertBefore (newSibling As XPathNavigator)
Parameter
- newSibling
- XPathNavigator
Ein XPathNavigator-Objekt, das auf dem Knoten positioniert ist, der als neuer nebengeordneter Knoten hinzugefügt werden soll.
Ausnahmen
Der XPathNavigator-Objektparameter ist null
.
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 ein neues pages
Element vor dem price
untergeordneten Element des ersten book
Elements in der contosoBooks.xml
Datei mithilfe des Knotens eingefügt, der XPathNavigator im angegebenen Objekt enthalten ist. Der http://www.contoso.com/books
Namespace wird angegeben, sodass das neue gleichgeordnete Element mit demselben Namespace wie das XML-Dokument eingefügt wird.
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");
XmlDocument^ childNodes = gcnew XmlDocument();
childNodes->Load(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator^ childNodesNavigator = childNodes->CreateNavigator();
navigator->InsertBefore(childNodesNavigator);
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");
XmlDocument childNodes = new XmlDocument();
childNodes.Load(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator childNodesNavigator = childNodes.CreateNavigator();
navigator.InsertBefore(childNodesNavigator);
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")
Dim childNodes As XmlDocument = New XmlDocument()
childNodes.Load(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
Dim childNodesNavigator As XPathNavigator = childNodes.CreateNavigator()
navigator.InsertBefore(childNodesNavigator)
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
Die folgenden wichtigen Hinweise sollten bei der Verwendung der InsertBefore -Methode berücksichtigt werden.
Wenn das XPathNavigator Objekt über einer Sequenz von XML-Knoten positioniert ist, werden alle Knoten in der Sequenz hinzugefügt.
Die InsertBefore -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Die InsertBefore -Methode wirkt sich nicht auf die Position von aus XPathNavigator.