XPathNavigator.InsertElementBefore(String, String, String, String) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membuat elemen saudara baru sebelum simpul saat ini menggunakan awalan namespace, nama lokal, dan URI namespace yang ditentukan, dengan nilai yang ditentukan.
public:
virtual void InsertElementBefore(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void InsertElementBefore (string prefix, string localName, string namespaceURI, string value);
public virtual void InsertElementBefore (string? prefix, string localName, string? namespaceURI, string? value);
abstract member InsertElementBefore : string * string * string * string -> unit
override this.InsertElementBefore : string * string * string * string -> unit
Public Overridable Sub InsertElementBefore (prefix As String, localName As String, namespaceURI As String, value As String)
Parameter
- prefix
- String
Awalan namespace dari elemen anak baru (jika ada).
- localName
- String
Nama lokal elemen anak baru (jika ada).
Pengecualian
Posisi XPathNavigator tidak memperbolehkan simpul saudara baru dimasukkan sebelum simpul saat ini.
XPathNavigator tidak mendukung pengeditan.
Contoh
Dalam contoh berikut, pages
elemen baru disisipkan sebelum price
elemen turunan dari elemen pertama book
dalam contosoBooks.xml
file.
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->InsertElementBefore(navigator->Prefix, "pages", navigator->LookupNamespace(navigator->Prefix), "100");
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.InsertElementBefore(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.InsertElementBefore(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")
navigator.MoveToParent()
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
Awalan namespace dan nilai URI dapat diperoleh menggunakan LookupPrefix metode atau LookupNamespace . Misalnya, sintaks berikut menyisipkan elemen saudara kandung dengan menggunakan namespace xmlns:bk="http://www.contoso.com/books"
dalam cakupan :
navigator.InsertElementBefore(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)
Ini menciptakan elemen saudara <bk:pages/>
baru.
Berikut ini adalah catatan penting yang perlu dipertimbangkan InsertElementBefore saat menggunakan metode .
Jika awalan namespace yang ditentukan adalah
null
atau String.Empty, maka awalan untuk URI namespace 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 InsertElementBefore ini hanya valid ketika XPathNavigator diposisikan pada elemen, teks, instruksi pemrosesan, atau simpul komentar.
Metode InsertElementBefore ini tidak mempengaruhi posisi XPathNavigator.