Udostępnij za pośrednictwem


XPathNavigator.AppendChild Metoda

Definicja

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła.

Przeciążenia

AppendChild()

XmlWriter Zwraca obiekt używany do tworzenia co najmniej jednego nowego węzła podrzędnego na końcu listy węzłów podrzędnych bieżącego węzła.

AppendChild(String)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu określonego ciągu danych XML.

AppendChild(XmlReader)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu zawartości XML określonego XmlReader obiektu.

AppendChild(XPathNavigator)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu węzłów w XPathNavigator określonym.

AppendChild()

XmlWriter Zwraca obiekt używany do tworzenia co najmniej jednego nowego węzła podrzędnego na końcu listy węzłów podrzędnych bieżącego węzła.

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

Zwraca

XmlWriter

Obiekt XmlWriter używany do tworzenia nowych węzłów podrzędnych na końcu listy węzłów podrzędnych bieżącego węzła.

Wyjątki

Bieżący węzeł, na XPathNavigator który znajduje się, nie jest węzłem głównym ani węzłem elementu.

Element XPathNavigator nie obsługuje edycji.

Przykłady

W poniższym przykładzie nowy pages element podrzędny jest dołączany do listy elementów podrzędnych pierwszego book elementu w contosoBooks.xml pliku przy użyciu XmlWriter obiektu zwróconego 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)

W przykładzie plik jest contosoBooks.xml pobierany jako dane wejściowe.

<?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>  

Uwagi

Dołączanie węzłów podrzędnych dodaje nowe węzły na końcu listy węzłów podrzędnych dla bieżącego węzła. Jeśli na przykład istnieją trzy węzły podrzędne dla elementu, pierwszy dołączony węzeł staje się czwartym węzłem podrzędnym. Jeśli nie istnieją żadne węzły podrzędne, zostanie utworzony nowy węzeł podrzędny.

Poniżej przedstawiono ważne uwagi, które należy wziąć pod uwagę podczas korzystania z AppendChild metody .

Do modułu zapisywania można zapisać więcej niż jeden węzeł. Wszystkie węzły są dołączane na końcu listy węzłów podrzędnych bieżącego węzła.

Dotyczy

AppendChild(String)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu określonego ciągu danych 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

Ciąg danych XML dla nowego węzła podrzędnego.

Wyjątki

Parametr ciągu danych XML to null.

Bieżący węzeł, na XPathNavigator który znajduje się, nie jest węzłem głównym ani węzłem elementu.

Element XPathNavigator nie obsługuje edycji.

Parametr ciągu danych XML nie jest poprawnie sformułowany.

Przykłady

W poniższym przykładzie nowy pages element podrzędny jest dołączany do listy elementów podrzędnych pierwszego book elementu w contosoBooks.xml pliku.

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)

W przykładzie plik jest contosoBooks.xml pobierany jako dane wejściowe.

<?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>  

Uwagi

Dołączanie węzła podrzędnego powoduje dodanie nowego węzła na końcu listy węzłów podrzędnych dla bieżącego węzła. Na przykład gdy istnieją trzy węzły podrzędne dla elementu, dołączony węzeł staje się czwartym węzłem podrzędnym. Jeśli nie istnieją żadne węzły podrzędne, zostanie utworzony nowy węzeł podrzędny.

Aby utworzyć nowy węzeł elementu, uwzględnij całą składnię XML w parametrze ciągu XML. Ciąg nowego węzła book to AppendChild("<book/>"). Ciąg dołączania tekstu "book" do węzła tekstowego bieżącego węzła to AppendChild("book"). Jeśli ciąg XML zawiera wiele węzłów, zostaną dodane wszystkie węzły.

Poniżej przedstawiono ważne uwagi, które należy wziąć pod uwagę podczas korzystania z AppendChild metody .

Dotyczy

AppendChild(XmlReader)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu zawartości XML określonego XmlReader obiektu.

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

newChild
XmlReader

XmlReader Obiekt umieszczony w danych XML dla nowego węzła podrzędnego.

Wyjątki

Obiekt XmlReader jest w stanie błędu lub jest zamknięty.

XmlReader Parametr obiektu to null.

Bieżący węzeł, na XPathNavigator który znajduje się, nie jest węzłem głównym ani węzłem elementu.

Element XPathNavigator nie obsługuje edycji.

Zawartość XML parametru XmlReader obiektu nie jest poprawnie sformułowana.

Przykłady

W poniższym przykładzie nowy pages element podrzędny jest dołączany do listy elementów podrzędnych pierwszego book elementu w contosoBooks.xml pliku przy użyciu określonego XmlReader obiektu. http://www.contoso.com/books Przestrzeń nazw jest określana tak, aby nowy element podrzędny był dołączany przy użyciu tej samej przestrzeni nazw co 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)

W przykładzie plik jest contosoBooks.xml pobierany jako dane wejściowe.

<?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>  

Uwagi

Dołączanie węzła podrzędnego powoduje dodanie nowego węzła na końcu listy węzłów podrzędnych dla bieżącego węzła. Na przykład gdy istnieją trzy węzły podrzędne dla elementu, dołączony węzeł staje się czwartym węzłem podrzędnym. Jeśli nie istnieją żadne węzły podrzędne, zostanie utworzony nowy węzeł podrzędny.

Poniżej przedstawiono ważne uwagi, które należy wziąć pod uwagę podczas korzystania z AppendChild metody .

  • XmlReader Jeśli obiekt jest umieszczony w sekwencji węzłów XML, zostaną dodane wszystkie węzły w sekwencji.

  • Metoda jest prawidłowa AppendChild tylko wtedy, gdy XPathNavigator element znajduje się w węźle głównym lub w węźle elementu.

  • Metoda AppendChild nie ma wpływu na położenie XPathNavigatorobiektu .

Dotyczy

AppendChild(XPathNavigator)

Tworzy nowy węzeł podrzędny na końcu listy węzłów podrzędnych bieżącego węzła przy użyciu węzłów w XPathNavigator określonym.

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

Obiekt XPathNavigator umieszczony w węźle, który ma zostać dodany jako nowy węzeł podrzędny.

Wyjątki

XPathNavigator Parametr obiektu to null.

Bieżący węzeł, na XPathNavigator który znajduje się, nie jest węzłem głównym ani węzłem elementu.

Element XPathNavigator nie obsługuje edycji.

Przykłady

W poniższym przykładzie nowy pages element podrzędny jest dołączany do listy elementów podrzędnych pierwszego book elementu w contosoBooks.xml pliku przy użyciu węzła zawartego XPathNavigator w określonym. http://www.contoso.com/books Przestrzeń nazw jest określana tak, aby nowy element podrzędny był dołączany przy użyciu tej samej przestrzeni nazw co 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)

W przykładzie plik jest contosoBooks.xml pobierany jako dane wejściowe.

<?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>  

Uwagi

Dołączanie węzła podrzędnego powoduje dodanie nowego węzła na końcu listy węzłów podrzędnych dla bieżącego węzła. Na przykład gdy istnieją trzy węzły podrzędne dla elementu, dołączony węzeł staje się czwartym węzłem podrzędnym. Jeśli nie istnieją żadne węzły podrzędne, zostanie utworzony nowy węzeł podrzędny.

Poniżej przedstawiono ważne uwagi, które należy wziąć pod uwagę podczas korzystania z AppendChild metody .

  • XPathNavigator Jeśli obiekt jest umieszczony w sekwencji węzłów XML, zostaną dodane wszystkie węzły w sekwencji.

  • Metoda jest prawidłowa AppendChild tylko wtedy, gdy XPathNavigator element znajduje się w węźle głównym lub w węźle elementu.

  • Metoda AppendChild nie ma wpływu na położenie XPathNavigatorobiektu .

Dotyczy