XPathNavigator.AppendChild 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ý podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu.
Přetížení
AppendChild() |
XmlWriter Vrátí objekt použitý k vytvoření jednoho nebo více nových podřízených uzlů na konci seznamu podřízených uzlů aktuálního uzlu. |
AppendChild(String) |
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí zadaného datového řetězce XML. |
AppendChild(XmlReader) |
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí obsahu XML zadaného objektu XmlReader . |
AppendChild(XPathNavigator) |
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí uzlů v zadaném XPathNavigator seznamu. |
AppendChild()
XmlWriter Vrátí objekt použitý k vytvoření jednoho nebo více nových podřízených uzlů na konci seznamu podřízených uzlů aktuálního uzlu.
public:
virtual System::Xml::XmlWriter ^ AppendChild();
public virtual System.Xml.XmlWriter AppendChild ();
abstract member AppendChild : unit -> System.Xml.XmlWriter
override this.AppendChild : unit -> System.Xml.XmlWriter
Public Overridable Function AppendChild () As XmlWriter
Návraty
Objekt XmlWriter použitý k vytvoření nových podřízených uzlů na konci seznamu podřízených uzlů aktuálního uzlu.
Výjimky
Aktuální uzel XPathNavigator , na který je umístěný, není kořenový uzel ani uzel prvku.
Nepodporuje XPathNavigator úpravy.
Příklady
V následujícím příkladu je nový pages
podřízený prvek připojen k seznamu podřízených elementů prvního book
prvku v contosoBooks.xml
souboru pomocí XmlWriter objektu vráceného AppendChild z metody.
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");
XmlWriter^ pages = navigator->AppendChild();
pages->WriteElementString("pages", "100");
pages->Close();
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");
XmlWriter pages = navigator.AppendChild();
pages.WriteElementString("pages", "100");
pages.Close();
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")
Dim pages As XmlWriter = navigator.AppendChild()
pages.WriteElementString("pages", "100")
pages.Close()
Console.WriteLine(navigator.OuterXml)
Příklad přebírá 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řipojení podřízených uzlů přidá nové uzly na konec seznamu podřízených uzlů pro aktuální uzel. Pokud například pro prvek existují tři podřízené uzly, stane se první připojený uzel čtvrtým podřízeným uzlem. Pokud neexistují žádné podřízené uzly, vytvoří se nový podřízený uzel.
Při používání metody je potřeba vzít v AppendChild úvahu následující důležité poznámky.
Nový podřízený uzel se nevloží, dokud Close se nevolá metoda objektu XmlWriter .
Metoda AppendChild je platná pouze v XPathNavigator případech, kdy je umístěn na kořenovém uzlu nebo na uzlu prvku.
Metoda AppendChild nemá vliv na pozici XPathNavigator.
Do zapisovače můžete napsat více než jeden uzel. Všechny uzly jsou připojeny na konec seznamu podřízených uzlů aktuálního uzlu.
Platí pro
AppendChild(String)
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí zadaného datového řetězce XML.
public:
virtual void AppendChild(System::String ^ newChild);
public virtual void AppendChild (string newChild);
abstract member AppendChild : string -> unit
override this.AppendChild : string -> unit
Public Overridable Sub AppendChild (newChild As String)
Parametry
- newChild
- String
Datový řetězec XML pro nový podřízený uzel.
Výjimky
Parametr datového řetězce XML je null
.
Aktuální uzel XPathNavigator , na který je umístěný, není kořenový uzel ani uzel prvku.
Nepodporuje XPathNavigator úpravy.
Parametr datového řetězce XML není správně vytvořen.
Příklady
V následujícím příkladu je nový pages
podřízený prvek připojen k seznamu podřízených prvků 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->AppendChild("<pages>100</pages>");
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.AppendChild("<pages>100</pages>");
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.AppendChild("<pages>100</pages>")
Console.WriteLine(navigator.OuterXml)
Příklad přebírá 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řipojení podřízeného uzlu přidá nový uzel na konec seznamu podřízených uzlů pro aktuální uzel. Pokud například pro prvek existují tři podřízené uzly, stane se připojený uzel čtvrtým podřízeným uzlem. Pokud neexistují žádné podřízené uzly, vytvoří se nový podřízený uzel.
Pokud chcete vytvořit nový uzel elementu, zahrňte do parametru řetězce XML veškerou syntaxi XML. Řetězec nového book
uzlu je AppendChild("<book/>")
. Řetězec pro připojení textu "book" k textovému uzlu aktuálního uzlu je AppendChild("book")
. Pokud řetězec XML obsahuje více uzlů, přidají se všechny uzly.
Při používání metody je potřeba vzít v AppendChild úvahu následující důležité poznámky.
Metoda AppendChild je platná pouze v XPathNavigator případech, kdy je umístěn na kořenovém uzlu nebo na uzlu prvku.
Metoda AppendChild nemá vliv na pozici XPathNavigator.
Platí pro
AppendChild(XmlReader)
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí obsahu XML zadaného objektu XmlReader .
public:
virtual void AppendChild(System::Xml::XmlReader ^ newChild);
public virtual void AppendChild (System.Xml.XmlReader newChild);
abstract member AppendChild : System.Xml.XmlReader -> unit
override this.AppendChild : System.Xml.XmlReader -> unit
Public Overridable Sub AppendChild (newChild As XmlReader)
Parametry
Výjimky
Objekt XmlReader je ve stavu chyby nebo je zavřený.
Parametr XmlReader objektu je null
.
Aktuální uzel XPathNavigator , na který je umístěný, není kořenový uzel ani uzel prvku.
Nepodporuje XPathNavigator úpravy.
Obsah xml parametru objektu XmlReader není správně formátován.
Příklady
V následujícím příkladu je nový pages
podřízený prvek připojen k seznamu podřízených prvků prvního book
prvku v contosoBooks.xml
souboru pomocí zadaného objektu XmlReader . Obor http://www.contoso.com/books
názvů je zadán tak, aby byl nový podřízený prvek připojen pomocí stejného oboru názvů jako dokument XML.
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");
XmlReader^ pages = XmlReader::Create(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
navigator->AppendChild(pages);
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");
XmlReader pages = XmlReader.Create(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
navigator.AppendChild(pages);
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")
Dim pages As XmlReader = XmlReader.Create(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
navigator.AppendChild(pages)
Console.WriteLine(navigator.OuterXml)
Příklad přebírá 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řipojení podřízeného uzlu přidá nový uzel na konec seznamu podřízených uzlů pro aktuální uzel. Pokud například pro prvek existují tři podřízené uzly, stane se připojený uzel čtvrtým podřízeným uzlem. Pokud neexistují žádné podřízené uzly, vytvoří se nový podřízený uzel.
Při používání metody je potřeba vzít v AppendChild úvahu následující důležité poznámky.
XmlReader Pokud je objekt umístěn v posloupnosti uzlů XML, všechny uzly v posloupnosti se přidají.
Metoda AppendChild je platná pouze v XPathNavigator případech, kdy je umístěn na kořenovém uzlu nebo na uzlu prvku.
Metoda AppendChild nemá vliv na pozici XPathNavigator.
Platí pro
AppendChild(XPathNavigator)
Vytvoří nový podřízený uzel na konci seznamu podřízených uzlů aktuálního uzlu pomocí uzlů v zadaném XPathNavigator seznamu.
public:
virtual void AppendChild(System::Xml::XPath::XPathNavigator ^ newChild);
public virtual void AppendChild (System.Xml.XPath.XPathNavigator newChild);
abstract member AppendChild : System.Xml.XPath.XPathNavigator -> unit
override this.AppendChild : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub AppendChild (newChild As XPathNavigator)
Parametry
- newChild
- XPathNavigator
Objekt XPathNavigator umístěný na uzlu, který se má přidat jako nový podřízený uzel.
Výjimky
Parametr XPathNavigator objektu je null
.
Aktuální uzel XPathNavigator , na který je umístěný, není kořenový uzel ani uzel prvku.
Nepodporuje XPathNavigator úpravy.
Příklady
V následujícím příkladu se k seznamu podřízených prvků prvního book
prvku v contosoBooks.xml
souboru připojí nový pages
podřízený prvek pomocí uzlu obsaženého v zadaném XPathNavigator prvku. Obor http://www.contoso.com/books
názvů je zadán tak, aby byl nový podřízený prvek připojen pomocí stejného oboru názvů jako dokument XML.
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");
XmlDocument^ childNodes = gcnew XmlDocument();
childNodes->Load(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator^ childNodesNavigator = childNodes->CreateNavigator();
if (childNodesNavigator->MoveToChild("pages", "http://www.contoso.com/books"))
{
navigator->AppendChild(childNodesNavigator);
}
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");
XmlDocument childNodes = new XmlDocument();
childNodes.Load(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator childNodesNavigator = childNodes.CreateNavigator();
if(childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books"))
{
navigator.AppendChild(childNodesNavigator);
}
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")
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()
If childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books") Then
navigator.AppendChild(childNodesNavigator)
End If
Console.WriteLine(navigator.OuterXml)
Příklad přebírá 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řipojení podřízeného uzlu přidá nový uzel na konec seznamu podřízených uzlů pro aktuální uzel. Pokud například pro prvek existují tři podřízené uzly, stane se připojený uzel čtvrtým podřízeným uzlem. Pokud neexistují žádné podřízené uzly, vytvoří se nový podřízený uzel.
Při používání metody je potřeba vzít v AppendChild úvahu následující důležité poznámky.
XPathNavigator Pokud je objekt umístěn v posloupnosti uzlů XML, všechny uzly v posloupnosti se přidají.
Metoda AppendChild je platná pouze v XPathNavigator případech, kdy je umístěn na kořenovém uzlu nebo na uzlu prvku.
Metoda AppendChild nemá vliv na pozici XPathNavigator.