XPathNavigator.PrependChildElement(String, String, String, String) Metoda

Definice

Vytvoří nový podřízený prvek na začátku seznamu podřízených uzlů aktuálního uzlu pomocí předpony oboru názvů, místního názvu a identifikátoru URI oboru názvů zadaného se zadanou hodnotou.

public:
 virtual void PrependChildElement(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void PrependChildElement(string? prefix, string localName, string? namespaceURI, string? value);
public virtual void PrependChildElement(string prefix, string localName, string namespaceURI, string value);
abstract member PrependChildElement : string * string * string * string -> unit
override this.PrependChildElement : string * string * string * string -> unit
Public Overridable Sub PrependChildElement (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 elementu. Pokud Empty nebo null jsou předány, vytvoří se prázdný prvek.

Výjimky

Aktuální uzel, na který XPathNavigator je umístěn, neumožňuje předběžné vytvoření nového podřízeného uzlu.

Nepodporuje XPathNavigator úpravy.

Příklady

V následujícím příkladu je nový pages podřízený prvek před začátkem seznamu podřízených prvků prvního book prvku v contosoBooks.xml souboru.

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

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

Console.WriteLine(navigator.OuterXml)

Příklad vezme contosoBooks.xml soubor 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

Předpendání podřízeného uzlu přidá nový uzel na začátek seznamu podřízených uzlů pro aktuální uzel. Pokud například existují tři podřízené uzly pro prvek, stane se předpendovaný uzel prvním podřízeným uzlem. Pokud neexistují žádné podřízené uzly, vytvoří se nový podřízený uzel.

Hodnoty předpony oboru názvů a identifikátoru LookupPrefix URI lze získat pomocí metody nebo LookupNamespace metody. Například následující syntaxe předpendí podřízeného elementu pomocí oboru názvů v oboru názvů xmlns:bk="http://www.contoso.com/books":

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

Tím se vytvoří nový podřízený <bk:pages/> prvek.

Při použití PrependChildElement této metody je potřeba vzít v úvahu následující důležité poznámky.

  • Pokud je zadaná null předpona oboru názvů nebo String.Empty, pak předpona pro identifikátor URI oboru názvů nového prvku se získá z aktuálních oborů názvů v oboru. Pokud v aktuálním oboru není přiřazena žádná předpona oboru názvů určená k zadanému identifikátoru URI oboru názvů, vygeneruje se automaticky předpona oboru názvů.

  • Metoda PrependChildElement je platná pouze v případech, kdy XPathNavigator je umístěn na uzlu elementu.

  • Metoda PrependChildElement nemá vliv na pozici XPathNavigator.

Platí pro