XPathNavigator.InsertElementAfter(String, String, String, String) 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í.
Vytvoří nový element na stejné úrovni za aktuálním uzlem pomocí předpony oboru názvů, místního názvu a identifikátoru URI oboru názvů se zadanou hodnotou.
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)
Parametry
- prefix
- String
Předpona oboru názvů nového podřízeného elementu (pokud existuje).
- localName
- String
Místní název nového podřízeného elementu (pokud existuje).
- namespaceURI
- String
Identifikátor URI oboru názvů nového podřízeného elementu (pokud existuje).
Empty a null
jsou ekvivalentní.
- value
- String
Hodnota nového podřízeného prvku. Pokud Empty jsou předány nebo null
, vytvoří se prázdný element.
Výjimky
Pozice parametru XPathNavigator neumožňuje vložení nového uzlu na stejné úrovni za aktuální uzel.
Nástroj XPathNavigator nepodporuje úpravy.
Příklady
V následujícím příkladu je nový pages
prvek vložen za price
podřízený prvek prvního book
prvku v contosoBooks.xml
souboru.
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->InsertElementAfter(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.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)
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
Hodnoty předpony oboru názvů a identifikátoru LookupPrefix URI je možné získat pomocí metody nebo LookupNamespace . Například následující syntaxe vloží element na stejné úrovni pomocí oboru názvů v oboru názvů xmlns:bk="http://www.contoso.com/books"
:
navigator.InsertElementAfter(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)
Tím se vytvoří nový element na stejné hodnotě <bk:pages/>
.
Při použití metody je potřeba vzít v úvahu následující důležité poznámky InsertElementAfter .
Pokud je
null
zadaná předpona oboru názvů nebo String.Empty, získá se předpona pro identifikátor URI oboru názvů nového elementu z aktuálních oborů názvů v oboru názvů. Pokud není k zadanému identifikátoru URI oboru názvů v aktuálním oboru názvů přiřazena žádná předpona oboru názvů, automaticky se vygeneruje předpona oboru názvů.Metoda InsertElementAfter je platná pouze v případě, že XPathNavigator je umístěna na uzlu elementu, textu, instrukce zpracování nebo komentáře.
Metoda InsertElementAfter nemá vliv na pozici metody XPathNavigator.