Share via


XPathNavigator.ReplaceSelf Metode

Definisi

Mengganti simpul saat ini dengan isi yang ditentukan.

Overload

ReplaceSelf(XmlReader)

Mengganti simpul saat ini dengan isi objek yang XmlReader ditentukan.

ReplaceSelf(XPathNavigator)

Mengganti simpul saat ini dengan isi objek yang XPathNavigator ditentukan.

ReplaceSelf(String)

Mengganti simpul saat ini dengan konten string yang ditentukan.

ReplaceSelf(XmlReader)

Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs

Mengganti simpul saat ini dengan isi objek yang XmlReader ditentukan.

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

Objek XmlReader yang diposisikan pada data XML untuk simpul baru.

Pengecualian

Objek XmlReader berada dalam status kesalahan atau ditutup.

Parameter XmlReader objek adalah null.

XPathNavigator tidak diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

XPathNavigator tidak mendukung pengeditan.

Konten XML dari XmlReader parameter objek tidak terbentuk dengan baik.

Contoh

Dalam contoh price berikut, elemen dalam contosoBooks.xml file digantikan oleh elemen baru pages .

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)

Contoh menggunakan file contosoBooks.xml sebagai input.

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

Keterangan

XPathNavigator diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode dan mengembalikan true. XPathNavigator tidak diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode ketika input XML dalam Empty hal XPathNavigator ini diposisikan pada simpul saudara berikutnya atau simpul induk jika tidak ada simpul saudara berikutnya ke simpul yang diganti dan ReplaceSelf pengembalian false.

  • Metode ReplaceSelf ini hanya valid ketika XPathNavigator diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

  • Jika string data XML tidak terbentuk dengan baik daripada pengecualian yang dilemparkan dan hasil metode ini setara dengan panggilan DeleteSelf pada simpul saat ini.

  • Jika string XML berisi beberapa simpul, semua simpul ditambahkan dan XPathNavigator diposisikan pada simpul pertama dalam rangkaian simpul.

  • Metode ReplaceSelf ini tidak setara dengan DeleteSelf metode .

Berlaku untuk

ReplaceSelf(XPathNavigator)

Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs

Mengganti simpul saat ini dengan isi objek yang XPathNavigator ditentukan.

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

Objek XPathNavigator yang diposisikan pada simpul baru.

Pengecualian

Parameter XPathNavigator objek adalah null.

XPathNavigator tidak diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

XPathNavigator tidak mendukung pengeditan.

Konten XML dari XPathNavigator parameter objek tidak terbentuk dengan baik.

Contoh

Dalam contoh price berikut, elemen dalam contosoBooks.xml file digantikan oleh elemen baru pages .

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)

Contoh menggunakan file contosoBooks.xml sebagai input.

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

Keterangan

XPathNavigator diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode dan mengembalikan true. XPathNavigator tidak diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode ketika input XML dalam Empty hal XPathNavigator ini diposisikan pada simpul saudara berikutnya atau simpul induk jika tidak ada simpul saudara berikutnya ke simpul yang diganti dan ReplaceSelf pengembalian false.

  • Metode ReplaceSelf ini hanya valid ketika XPathNavigator diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

  • Jika string data XML tidak terbentuk dengan baik daripada pengecualian yang dilemparkan dan hasil metode ini setara dengan panggilan DeleteSelf pada simpul saat ini.

  • Jika string XML berisi beberapa simpul, semua simpul ditambahkan dan XPathNavigator diposisikan pada simpul pertama dalam rangkaian simpul.

  • Metode ReplaceSelf ini tidak setara dengan DeleteSelf metode .

Berlaku untuk

ReplaceSelf(String)

Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs
Sumber:
XPathNavigator.cs

Mengganti simpul saat ini dengan konten string yang ditentukan.

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

String data XML untuk simpul baru.

Pengecualian

Parameter string XML adalah null.

XPathNavigator tidak diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

XPathNavigator tidak mendukung pengeditan.

Parameter string XML tidak terbentuk dengan baik.

Contoh

Dalam contoh price berikut, elemen dalam contosoBooks.xml file digantikan oleh elemen baru pages .

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)

Contoh menggunakan file contosoBooks.xml sebagai input.

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

Keterangan

XPathNavigator diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode dan mengembalikan true. XPathNavigator tidak diposisikan pada simpul baru setelah menyelesaikan ReplaceSelf metode ketika input XML dalam Empty hal XPathNavigator ini diposisikan pada simpul saudara berikutnya atau simpul induk jika tidak ada simpul saudara berikutnya ke simpul yang diganti dan ReplaceSelf pengembalian false.

  • Metode ReplaceSelf ini hanya valid ketika XPathNavigator diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.

  • Jika string data XML tidak terbentuk dengan baik daripada pengecualian yang dilemparkan dan hasil metode ini setara dengan panggilan DeleteSelf pada simpul saat ini.

  • Jika string XML berisi beberapa simpul, semua simpul ditambahkan dan XPathNavigator diposisikan pada simpul pertama dalam rangkaian simpul.

  • Metode ReplaceSelf ini tidak setara dengan DeleteSelf metode .

Berlaku untuk