XPathNavigator.PrependChild メソッド

定義

現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

オーバーロード

PrependChild()

現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成するために使用する XmlWriter オブジェクトを返します。

PrependChild(String)

指定された XML 文字列を使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

PrependChild(XmlReader)

指定された XmlReader オブジェクトの XML コンテンツを使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

PrependChild(XPathNavigator)

指定された XPathNavigator オブジェクト内のノードを使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

PrependChild()

現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成するために使用する XmlWriter オブジェクトを返します。

public:
 virtual System::Xml::XmlWriter ^ PrependChild();
public virtual System.Xml.XmlWriter PrependChild ();
abstract member PrependChild : unit -> System.Xml.XmlWriter
override this.PrependChild : unit -> System.Xml.XmlWriter
Public Overridable Function PrependChild () As XmlWriter

戻り値

XmlWriter

現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成するために使用する XmlWriter オブジェクト。

例外

XPathNavigator が配置されている現在のノードの前には、新しい子ノードを追加することはできません。

XPathNavigator では、編集はサポートされていません。

次の例では、メソッドから返されたオブジェクトを使用してXmlWriter、ファイル内の最初bookの要素の子要素のリストの先頭に新しいpages子要素contosoBooks.xmlPrependChild追加されます。

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->PrependChild();
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.PrependChild();
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.PrependChild()
pages.WriteElementString("pages", "100")
pages.Close()

Console.WriteLine(navigator.OuterXml)

この例は、contosoBooks.xml ファイルを入力として使用します。

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

注釈

子ノードの前に、現在のノードの子ノードの一覧の先頭に新しいノードが追加されます。 たとえば、要素に対して 3 つの子ノードが存在する場合、先頭に追加されたノードが最初の子ノードになります。 子ノードが存在しない場合は、新しい子ノードが作成されます。

メソッドを使用する場合に考慮すべき重要な注意事項を次に PrependChild 示します。

適用対象

PrependChild(String)

指定された XML 文字列を使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

public:
 virtual void PrependChild(System::String ^ newChild);
public virtual void PrependChild (string newChild);
abstract member PrependChild : string -> unit
override this.PrependChild : string -> unit
Public Overridable Sub PrependChild (newChild As String)

パラメーター

newChild
String

新しい子ノード用の XML データ文字列。

例外

XML 文字列パラメーターは null です。

XPathNavigator が配置されている現在のノードは、新しい子ノードを付加できません。

XPathNavigator では、編集はサポートされていません。

XML 文字列パラメーターは整形式ではありません。

次の例では、ファイル内の最初bookの要素の子要素のリストの先頭に新しいpages子要素がcontosoBooks.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");

navigator->PrependChild("<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.PrependChild("<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.PrependChild("<pages>100</pages>")

Console.WriteLine(navigator.OuterXml)

この例は、contosoBooks.xml ファイルを入力として使用します。

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

注釈

子ノードの前に、現在のノードの子ノードの一覧の先頭に新しいノードが追加されます。 たとえば、要素に対して 3 つの子ノードが存在する場合、先頭に追加されたノードが最初の子ノードになります。 子ノードが存在しない場合は、新しい子ノードが作成されます。

新しい要素ノードを作成するには、XML 文字列パラメーターにすべての XML 構文を含めます。 新しい book ノードの文字列は PrependChild("<book/>"). 現在のノードのテキスト ノードにテキスト "book" を追加するための文字列は次のようになります PrependChild("book")。 XML 文字列に複数のノードが含まれている場合は、すべてのノードが追加されます。

メソッドを使用する場合に考慮すべき重要な注意事項を次に PrependChild 示します。

適用対象

PrependChild(XmlReader)

指定された XmlReader オブジェクトの XML コンテンツを使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

public:
 virtual void PrependChild(System::Xml::XmlReader ^ newChild);
public virtual void PrependChild (System.Xml.XmlReader newChild);
abstract member PrependChild : System.Xml.XmlReader -> unit
override this.PrependChild : System.Xml.XmlReader -> unit
Public Overridable Sub PrependChild (newChild As XmlReader)

パラメーター

newChild
XmlReader

新しい子ノード用の XML データに配置された XmlReader オブジェクト。

例外

XmlReader オブジェクトがエラー状態か、または閉じています。

XmlReader オブジェクトのパラメーターは null です。

XPathNavigator が配置されている現在のノードは、新しい子ノードを付加できません。

XPathNavigator では、編集はサポートされていません。

XmlReader オブジェクト パラメーターの XML コンテンツは整形式ではありません。

次の例では、指定されたオブジェクトを使用して、ファイル内の最初bookの要素の子要素のリストの先頭に新しいpages子要素contosoBooks.xmlXmlReader追加されます。 名前空間は http://www.contoso.com/books 、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->PrependChild(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.PrependChild(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.PrependChild(pages)

Console.WriteLine(navigator.OuterXml)

この例は、contosoBooks.xml ファイルを入力として使用します。

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

注釈

子ノードの前に、現在のノードの子ノードの一覧の先頭に新しいノードが追加されます。 たとえば、要素に対して 3 つの子ノードが存在する場合、先頭に追加されたノードが最初の子ノードになります。 子ノードが存在しない場合は、新しい子ノードが作成されます。

メソッドを使用する場合に考慮すべき重要な注意事項を次に PrependChild 示します。

  • オブジェクトが XmlReader 一連の XML ノード上に配置されている場合は、シーケンス内のすべてのノードが追加されます。

  • メソッドは PrependChild 、要素ノードに XPathNavigator 配置されている場合にのみ有効です。

  • このメソッドは PrependChildXPathNavigator.

適用対象

PrependChild(XPathNavigator)

指定された XPathNavigator オブジェクト内のノードを使用して、現在のノード下に存在する子ノードのリストの先頭に新しい子ノードを作成します。

public:
 virtual void PrependChild(System::Xml::XPath::XPathNavigator ^ newChild);
public virtual void PrependChild (System.Xml.XPath.XPathNavigator newChild);
abstract member PrependChild : System.Xml.XPath.XPathNavigator -> unit
override this.PrependChild : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub PrependChild (newChild As XPathNavigator)

パラメーター

newChild
XPathNavigator

新しい子ノードとして追加するノードに配置される XPathNavigator オブジェクト。

例外

XPathNavigator オブジェクトのパラメーターは null です。

XPathNavigator が配置されている現在のノードは、新しい子ノードを付加できません。

XPathNavigator では、編集はサポートされていません。

次の例では、指定されたオブジェクトに含まれるノードを使用して、ファイル内の最初bookの要素の子要素のリストの先頭に新しいpages子要素contosoBooks.xmlXPathNavigator追加されます。 名前空間は http://www.contoso.com/books 、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();

navigator->PrependChild(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();

navigator.PrependChild(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()

navigator.PrependChild(childNodesNavigator)

Console.WriteLine(navigator.OuterXml)

この例は、contosoBooks.xml ファイルを入力として使用します。

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

注釈

子ノードの前に、現在のノードの子ノードの一覧の先頭に新しいノードが追加されます。 たとえば、要素に対して 3 つの子ノードが存在する場合、先頭に追加されたノードが最初の子ノードになります。 子ノードが存在しない場合は、新しい子ノードが作成されます。

メソッドを使用する場合に考慮すべき重要な注意事項を次に PrependChild 示します。

  • オブジェクトが XPathNavigator 一連の XML ノード上に配置されている場合は、シーケンス内のすべてのノードが追加されます。

  • メソッドは PrependChild 、要素ノードに XPathNavigator 配置されている場合にのみ有効です。

  • このメソッドは PrependChildXPathNavigator.

適用対象