次の方法で共有


XContainer.ReplaceNodes メソッド

定義

このドキュメントまたは要素の子ノードを指定された内容で置き換えます。

オーバーロード

ReplaceNodes(Object)

このドキュメントまたは要素の子ノードを指定された内容で置き換えます。

ReplaceNodes(Object[])

このドキュメントまたは要素の子ノードを指定された内容で置き換えます。

次の例では、2 つの XML ツリーを作成し、このメソッドを使用して、そのうちの 1 つの内容をクエリの結果に置き換えます。

XElement root = new XElement("Root",  
    new XElement("Child", 1),  
    new XElement("Child", 2),  
    new XElement("Child", 3),  
    new XElement("Child", 4),  
    new XElement("Child", 5)  
);  
root.ReplaceNodes(  
    from el in root.Elements()  
    where (int)el >= 3  
    select el  
);  
Console.WriteLine(root);  
Dim root As XElement = _   
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  
root.ReplaceNodes( _  
    From el In root.Elements _  
    Where el.Value >= 3 _  
    Select el)  
Console.WriteLine(root)  

この例を実行すると、次の出力が生成されます。

<Root>  
  <Child>3</Child>  
  <Child>4</Child>  
  <Child>5</Child>  
</Root>  

注釈

この関数に渡すことができる有効なコンテンツの詳細については、「 XElement オブジェクトと XDocument オブジェクトの有効なコンテンツ」を参照してください。

このメソッドは、 イベントと イベントをChanging発生させますChanged

このメソッドにはスナップショットセマンティクスがあります。 最初に、新しいコンテンツのコピーを作成します。 その後、このノードのすべての子ノードが削除されます。 最後に、新しいコンテンツを子ノードとして追加します。 つまり、子ノード自体に対するクエリを使用して、子ノードを置き換えることができます。

ReplaceNodes(Object)

ソース:
XContainer.cs
ソース:
XContainer.cs
ソース:
XContainer.cs

このドキュメントまたは要素の子ノードを指定された内容で置き換えます。

public:
 void ReplaceNodes(System::Object ^ content);
public void ReplaceNodes (object content);
public void ReplaceNodes (object? content);
member this.ReplaceNodes : obj -> unit
Public Sub ReplaceNodes (content As Object)

パラメーター

content
Object

子ノードを置き換える単純な内容またはコンテンツ オブジェクトのコレクションを格納しているコンテンツ オブジェクト。

次の例では、子ノードを含む XML ツリーを作成します。 次に、すべての子ノードを 1 つの要素に置き換えます。

子ノードを LINQ クエリの結果に置き換える例については、「」を参照してください ReplaceNodes

XElement root = new XElement("Root",  
    new XElement("Child", 1),  
    new XElement("Child", 2),  
    new XElement("Child", 3),  
    new XElement("Child", 4),  
    new XElement("Child", 5)  
);  
root.ReplaceNodes(  
    from el in root.Elements()  
    where (int)el >= 3  
    select el  
);  
Console.WriteLine(root);  
Dim root As XElement = _   
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  
root.ReplaceNodes( _  
    From el In root.Elements _  
    Where el.Value >= 3 _  
    Select el)  
Console.WriteLine(root)  

この例を実行すると、次の出力が生成されます。

<Root>  
  <Child>3</Child>  
  <Child>4</Child>  
  <Child>5</Child>  
</Root>  

注釈

この関数に渡すことができる有効なコンテンツの詳細については、「 XElement オブジェクトと XDocument オブジェクトの有効なコンテンツ」を参照してください。

このメソッドは、 イベントと イベントをChanging発生させますChanged

このメソッドにはスナップショットセマンティクスがあります。 最初に、新しいコンテンツのコピーを作成します。 その後、このノードのすべての子ノードが削除されます。 最後に、新しいコンテンツを子ノードとして追加します。 つまり、子ノード自体に対するクエリを使用して、子ノードを置き換えることができます。

こちらもご覧ください

適用対象

ReplaceNodes(Object[])

ソース:
XContainer.cs
ソース:
XContainer.cs
ソース:
XContainer.cs

このドキュメントまたは要素の子ノードを指定された内容で置き換えます。

public:
 void ReplaceNodes(... cli::array <System::Object ^> ^ content);
public void ReplaceNodes (params object[] content);
public void ReplaceNodes (params object?[] content);
member this.ReplaceNodes : obj[] -> unit
Public Sub ReplaceNodes (ParamArray content As Object())

パラメーター

content
Object[]

コンテンツ オブジェクトのパラメーター リスト。

次の例では、ディクショナリと XML ツリーを作成します。 次に、ディクショナリにクエリを実行し、結果を の XElementIEnumerable<T>投影し、XML ツリーの内容をクエリの結果に置き換えます。

XElement root = new XElement("Root",  
    new XElement("Child", 1),  
    new XElement("Child", 2),  
    new XElement("Child", 3),  
    new XElement("Child", 4),  
    new XElement("Child", 5)  
);  
root.ReplaceNodes(  
    from el in root.Elements()  
    where (int)el >= 3  
    select el  
);  
Console.WriteLine(root);  
Dim root As XElement = _   
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  
root.ReplaceNodes( _  
    From el In root.Elements _  
    Where el.Value >= 3 _  
    Select el)  
Console.WriteLine(root)  

この例を実行すると、次の出力が生成されます。

<Root>  
  <Child>3</Child>  
  <Child>4</Child>  
  <Child>5</Child>  
</Root>  

注釈

この関数に渡すことができる有効なコンテンツの詳細については、「 XElement オブジェクトと XDocument オブジェクトの有効なコンテンツ」を参照してください。

このメソッドは、 イベントと イベントをChanging発生させますChanged

このメソッドにはスナップショットセマンティクスがあります。 最初に、新しいコンテンツのコピーを作成します。 その後、このノードのすべての子ノードが削除されます。 最後に、新しいコンテンツを子ノードとして追加します。 つまり、子ノード自体に対するクエリを使用して、子ノードを置き換えることができます。

こちらもご覧ください

適用対象