XPathNavigator.InsertElementAfter(String, String, String, String) Metode

Definisi

Membuat elemen saudara baru setelah simpul saat ini menggunakan awalan namespace, nama lokal, dan URI namespace yang ditentukan, dengan nilai yang ditentukan.

public:
 virtual void InsertElementAfter(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void InsertElementAfter(string? prefix, string localName, string? namespaceURI, string? value);
public virtual void InsertElementAfter(string prefix, string localName, string namespaceURI, string value);
abstract member InsertElementAfter : string * string * string * string -> unit
override this.InsertElementAfter : string * string * string * string -> unit
Public Overridable Sub InsertElementAfter (prefix As String, localName As String, namespaceURI As String, value As String)

Parameter

prefix
String

Awalan namespace dari elemen turunan baru (jika ada).

localName
String

Nama lokal elemen anak baru (jika ada).

namespaceURI
String

URI namespace dari elemen turunan baru (jika ada). Empty dan null setara.

value
String

Nilai elemen anak baru. Jika Empty atau null diteruskan, elemen kosong dibuat.

Pengecualian

Posisi XPathNavigator tidak mengizinkan simpul saudara baru dimasukkan setelah simpul saat ini.

XPathNavigator Tidak mendukung pengeditan.

Contoh

Dalam contoh berikut, elemen baru pages disisipkan setelah price elemen turunan dari elemen pertama book dalam contosoBooks.xml file.

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.InsertElementAfter(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.InsertElementAfter(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Contoh mengambil contosoBooks.xml file 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

Awalan namespace dan nilai URI dapat diperoleh menggunakan LookupPrefix metode atau LookupNamespace . Misalnya, sintaks berikut menyisipkan elemen saudara dengan menggunakan namespace xmlns:bk="http://www.contoso.com/books"dalam cakupan :

navigator.InsertElementAfter(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)

Ini membuat elemen saudara <bk:pages/> baru.

Berikut ini adalah catatan penting yang perlu dipertimbangkan InsertElementAfter saat menggunakan metode .

  • Jika awalan namespace yang ditentukan adalah null atau String.Empty, maka awalan untuk namespace URI elemen baru diperoleh dari namespace saat ini dalam cakupan. Jika tidak ada awalan namespace yang ditetapkan ke URI namespace yang ditentukan pada cakupan saat ini, maka awalan namespace akan dibuat secara otomatis.

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

  • Metode InsertElementAfter ini tidak memengaruhi posisi XPathNavigator.

Berlaku untuk