XPathNavigator.ReplaceSelf 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.
Ersetzt den aktuellen Knoten mit dem angegebenen Inhalt.
Überlädt
ReplaceSelf(XmlReader) |
Ersetzt den aktuellen Knoten durch den Inhalt des angegebenen XmlReader-Objekts. |
ReplaceSelf(XPathNavigator) |
Ersetzt den aktuellen Knoten durch den Inhalt des angegebenen XPathNavigator-Objekts. |
ReplaceSelf(String) |
Ersetzt den aktuellen Knoten mit dem Inhalt der angegebenen Zeichenfolge. |
ReplaceSelf(XmlReader)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Ersetzt den aktuellen Knoten durch den Inhalt des angegebenen XmlReader-Objekts.
public:
virtual void ReplaceSelf(System::Xml::XmlReader ^ newNode);
public virtual void ReplaceSelf (System.Xml.XmlReader newNode);
abstract member ReplaceSelf : System.Xml.XmlReader -> unit
override this.ReplaceSelf : System.Xml.XmlReader -> unit
Public Overridable Sub ReplaceSelf (newNode As XmlReader)
Parameter
- newNode
- XmlReader
Ein XmlReader-Objekt, das auf den XML-Daten für den neuen Knoten positioniert ist.
Ausnahmen
Das XmlReader-Objekt befindet sich in einem Fehlerzustand oder wurde geschlossen.
Der XmlReader-Objektparameter ist null
.
Der XPathNavigator ist nicht auf einem Elementknoten, Textknoten, Kommentarknoten oder Knoten für eine Verarbeitungsanweisung positioniert.
Der XPathNavigator unterstützt keine Bearbeitung.
Der XML-Inhalt des XmlReader-Objektparameters ist nicht ordnungsgemäß formatiert.
Beispiele
Im folgenden Beispiel wird das price
Element in der contosoBooks.xml
Datei durch ein neues pages
Element ersetzt.
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->ReplaceSelf(pages);
Console::WriteLine("Position after delete: {0}", navigator->Name);
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.ReplaceSelf(pages);
Console.WriteLine("Position after delete: {0}", navigator.Name);
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.ReplaceSelf(pages)
Console.WriteLine("Position after delete: {0}", navigator.Name)
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
Wird XPathNavigator nach Abschluss der ReplaceSelf -Methode auf dem neuen Knoten positioniert und gibt zurück true
. Ist XPathNavigator nach Abschluss der ReplaceSelf -Methode nicht auf dem neuen Knoten positioniert, wenn die XML-Eingabe ist, ist Empty der XPathNavigator entweder auf dem nächsten untergeordneten Knoten oder auf dem übergeordneten Knoten positioniert, wenn kein nächster gleichgeordneter Knoten zum ersetzten Knoten vorhanden ist und der ReplaceSelf zurückgibt false
.
Die ReplaceSelf -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Wenn die XML-Datenzeichenfolge nicht wohlgeformt ist, wird eine Ausnahme ausgelöst, und das Ergebnis dieser Methode entspricht dem Aufrufen DeleteSelf des aktuellen Knotens.
Wenn die XML-Zeichenfolge mehrere Knoten enthält, werden alle Knoten hinzugefügt und auf XPathNavigator dem ersten Knoten in der Reihe von Knoten positioniert.
Die ReplaceSelf -Methode entspricht nicht der DeleteSelf -Methode.
Gilt für:
ReplaceSelf(XPathNavigator)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Ersetzt den aktuellen Knoten durch den Inhalt des angegebenen XPathNavigator-Objekts.
public:
virtual void ReplaceSelf(System::Xml::XPath::XPathNavigator ^ newNode);
public virtual void ReplaceSelf (System.Xml.XPath.XPathNavigator newNode);
abstract member ReplaceSelf : System.Xml.XPath.XPathNavigator -> unit
override this.ReplaceSelf : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub ReplaceSelf (newNode As XPathNavigator)
Parameter
- newNode
- XPathNavigator
Ein XPathNavigator-Objekt, das auf dem neuen Knoten positioniert ist.
Ausnahmen
Der XPathNavigator-Objektparameter ist null
.
Der XPathNavigator ist nicht auf einem Elementknoten, Textknoten, Kommentarknoten oder Knoten für eine Verarbeitungsanweisung positioniert.
Der XPathNavigator unterstützt keine Bearbeitung.
Der XML-Inhalt des XPathNavigator-Objektparameters ist nicht ordnungsgemäß formatiert.
Beispiele
Im folgenden Beispiel wird das price
Element in der contosoBooks.xml
Datei durch ein neues pages
Element ersetzt.
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->ReplaceSelf(childNodesNavigator);
Console::WriteLine("Position after delete: {0}", navigator->Name);
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.ReplaceSelf(childNodesNavigator);
Console.WriteLine("Position after delete: {0}", navigator.Name);
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.ReplaceSelf(childNodesNavigator)
Console.WriteLine("Position after delete: {0}", navigator.Name)
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
Wird XPathNavigator nach Abschluss der ReplaceSelf -Methode auf dem neuen Knoten positioniert und gibt zurück true
. Ist XPathNavigator nach Abschluss der ReplaceSelf -Methode nicht auf dem neuen Knoten positioniert, wenn die XML-Eingabe ist, ist Empty der XPathNavigator entweder auf dem nächsten untergeordneten Knoten oder auf dem übergeordneten Knoten positioniert, wenn kein nächster gleichgeordneter Knoten zum ersetzten Knoten vorhanden ist und der ReplaceSelf zurückgibt false
.
Die ReplaceSelf -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Wenn die XML-Datenzeichenfolge nicht wohlgeformt ist, wird eine Ausnahme ausgelöst, und das Ergebnis dieser Methode entspricht dem Aufrufen DeleteSelf des aktuellen Knotens.
Wenn die XML-Zeichenfolge mehrere Knoten enthält, werden alle Knoten hinzugefügt und auf XPathNavigator dem ersten Knoten in der Reihe von Knoten positioniert.
Die ReplaceSelf -Methode entspricht nicht der DeleteSelf -Methode.
Gilt für:
ReplaceSelf(String)
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
- Quelle:
- XPathNavigator.cs
Ersetzt den aktuellen Knoten mit dem Inhalt der angegebenen Zeichenfolge.
public:
virtual void ReplaceSelf(System::String ^ newNode);
public virtual void ReplaceSelf (string newNode);
abstract member ReplaceSelf : string -> unit
override this.ReplaceSelf : string -> unit
Public Overridable Sub ReplaceSelf (newNode As String)
Parameter
- newNode
- String
Die Zeichenfolge mit XML-Daten für den neuen Knoten.
Ausnahmen
Der XML-Zeichenfolgenparameter ist null
.
XPathNavigator befindet sich nicht auf einem Element, einem Text, einer Verarbeitungsanweisung oder einem Kommentarknoten.
Der XPathNavigator unterstützt keine Bearbeitung.
Der XML-Zeichenfolgenparameter ist nicht ordnungsgemäß formatiert.
Beispiele
Im folgenden Beispiel wird das price
Element in der contosoBooks.xml
Datei durch ein neues pages
Element ersetzt.
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->ReplaceSelf("<pages>100</pages>");
Console::WriteLine("Position after delete: {0}", navigator->Name);
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.ReplaceSelf("<pages>100</pages>");
Console.WriteLine("Position after delete: {0}", navigator.Name);
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.ReplaceSelf("<pages>100</pages>")
Console.WriteLine("Position after delete: {0}", navigator.Name)
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
Wird XPathNavigator nach Abschluss der ReplaceSelf -Methode auf dem neuen Knoten positioniert und gibt zurück true
. Ist XPathNavigator nach Abschluss der ReplaceSelf -Methode nicht auf dem neuen Knoten positioniert, wenn die XML-Eingabe ist, ist Empty der XPathNavigator entweder auf dem nächsten untergeordneten Knoten oder auf dem übergeordneten Knoten positioniert, wenn kein nächster gleichgeordneter Knoten zum ersetzten Knoten vorhanden ist und der ReplaceSelf zurückgibt false
.
Die ReplaceSelf -Methode ist nur gültig, wenn die XPathNavigator auf einem Element, Text, einer Verarbeitungsanweisung oder einem Kommentarknoten positioniert ist.
Wenn die XML-Datenzeichenfolge nicht wohlgeformt ist, wird eine Ausnahme ausgelöst, und das Ergebnis dieser Methode entspricht dem Aufrufen DeleteSelf des aktuellen Knotens.
Wenn die XML-Zeichenfolge mehrere Knoten enthält, werden alle Knoten hinzugefügt und auf XPathNavigator dem ersten Knoten in der Reihe von Knoten positioniert.
Die ReplaceSelf -Methode entspricht nicht der DeleteSelf -Methode.