XPathNavigator.ReplaceSelf Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nahradí aktuální uzel zadaným obsahem.
Přetížení
ReplaceSelf(XmlReader) |
Nahradí aktuální uzel obsahem zadaného objektu XmlReader . |
ReplaceSelf(XPathNavigator) |
Nahradí aktuální uzel obsahem zadaného objektu XPathNavigator . |
ReplaceSelf(String) |
Nahradí aktuální uzel obsahem zadaného řetězce. |
ReplaceSelf(XmlReader)
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
Nahradí aktuální uzel obsahem zadaného objektu XmlReader .
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)
Parametry
Výjimky
Objekt XmlReader je v chybovém stavu nebo je zavřený.
Parametr XmlReader object je null
.
Objekt XPathNavigator není umístěný na uzlu elementu, textu, instrukce zpracování nebo komentáře.
Nástroj XPathNavigator nepodporuje úpravy.
Obsah XML parametru objektu XmlReader není ve správném formátu.
Příklady
V následujícím příkladu price
je prvek v contosoBooks.xml
souboru nahrazen novým pages
elementem.
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)
V příkladu se contosoBooks.xml
soubor používá jako vstup.
<?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>
Poznámky
Po XPathNavigator dokončení ReplaceSelf metody se umístí na nový uzel a vrátí true
. Hodnota XPathNavigator není umístěna na novém uzlu po dokončení ReplaceSelf metody, když je Empty vstup XML v takovém případě XPathNavigator je buď umístěn na dalším uzlu na stejné úrovni nebo na nadřazený uzel, pokud neexistuje žádný další uzel na stejné úrovni nahrazeného uzlu a ReplaceSelf vrátí hodnotu false
.
Metoda ReplaceSelf je platná pouze v XPathNavigator případě, že je umístěn na prvek, text, instrukce zpracování nebo komentář uzlu.
Pokud datový řetězec XML není ve správném formátu, než je vyvolán výjimka a výsledek této metody je ekvivalentní volání DeleteSelf na aktuálním uzlu.
Pokud řetězec XML obsahuje více uzlů, všechny uzly se přidají a XPathNavigator umístí se na první uzel v řadě uzlů.
Metoda ReplaceSelf není ekvivalentní DeleteSelf metodě.
Platí pro
ReplaceSelf(XPathNavigator)
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
Nahradí aktuální uzel obsahem zadaného objektu XPathNavigator .
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)
Parametry
- newNode
- XPathNavigator
Objekt XPathNavigator umístěný na novém uzlu.
Výjimky
Parametr XPathNavigator object je null
.
Objekt XPathNavigator není umístěný na uzlu elementu, textu, instrukce zpracování nebo komentáře.
Nástroj XPathNavigator nepodporuje úpravy.
Obsah XML parametru objektu XPathNavigator není ve správném formátu.
Příklady
V následujícím příkladu price
je prvek v contosoBooks.xml
souboru nahrazen novým pages
elementem.
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)
V příkladu se contosoBooks.xml
soubor používá jako vstup.
<?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>
Poznámky
Po XPathNavigator dokončení ReplaceSelf metody se umístí na nový uzel a vrátí true
. Hodnota XPathNavigator není umístěna na novém uzlu po dokončení ReplaceSelf metody, když je Empty vstup XML v takovém případě XPathNavigator je buď umístěn na dalším uzlu na stejné úrovni nebo na nadřazený uzel, pokud neexistuje žádný další uzel na stejné úrovni nahrazeného uzlu a ReplaceSelf vrátí hodnotu false
.
Metoda ReplaceSelf je platná pouze v XPathNavigator případě, že je umístěn na prvek, text, instrukce zpracování nebo komentář uzlu.
Pokud datový řetězec XML není ve správném formátu, než je vyvolán výjimka a výsledek této metody je ekvivalentní volání DeleteSelf na aktuálním uzlu.
Pokud řetězec XML obsahuje více uzlů, všechny uzly se přidají a XPathNavigator umístí se na první uzel v řadě uzlů.
Metoda ReplaceSelf není ekvivalentní DeleteSelf metodě.
Platí pro
ReplaceSelf(String)
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
Nahradí aktuální uzel obsahem zadaného řetězce.
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)
Parametry
- newNode
- String
Datový řetězec XML pro nový uzel.
Výjimky
Parametr řetězce XML je null
.
Objekt XPathNavigator není umístěný na uzlu elementu, textu, instrukce zpracování nebo komentáře.
Nástroj XPathNavigator nepodporuje úpravy.
Parametr řetězce XML není ve správném formátu.
Příklady
V následujícím příkladu price
je prvek v contosoBooks.xml
souboru nahrazen novým pages
elementem.
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)
V příkladu se contosoBooks.xml
soubor používá jako vstup.
<?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>
Poznámky
Po XPathNavigator dokončení ReplaceSelf metody se umístí na nový uzel a vrátí true
. Hodnota XPathNavigator není umístěna na novém uzlu po dokončení ReplaceSelf metody, když je Empty vstup XML v takovém případě XPathNavigator je buď umístěn na dalším uzlu na stejné úrovni nebo na nadřazený uzel, pokud neexistuje žádný další uzel na stejné úrovni nahrazeného uzlu a ReplaceSelf vrátí hodnotu false
.
Metoda ReplaceSelf je platná pouze v XPathNavigator případě, že je umístěn na prvek, text, instrukce zpracování nebo komentář uzlu.
Pokud datový řetězec XML není ve správném formátu, než je vyvolán výjimka a výsledek této metody je ekvivalentní volání DeleteSelf na aktuálním uzlu.
Pokud řetězec XML obsahuje více uzlů, všechny uzly se přidají a XPathNavigator umístí se na první uzel v řadě uzlů.
Metoda ReplaceSelf není ekvivalentní DeleteSelf metodě.