XContainer.ReplaceNodes Method (Object)
Replaces the children nodes of this document or element with the specified content.
Assembly: System.Xml.Linq (in System.Xml.Linq.dll)
For details about the valid content that can be passed to this function, see Valid Content of XElement and XDocument Objects.
This method has snapshot semantics. It first creates a copy of the new content. It then removes all children nodes of this node. Finally, it adds the new content as children nodes. This means that you can replace children nodes using a query on the children nodes themselves.
The following example creates an XML tree that contains children nodes. It then replaces all of the children nodes with a single element.
To see an example of replacing the children nodes with the results of a LINQ query, see 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);
This example produces the following output:
.NET FrameworkSupported in: 4.6, 4.5, 4, 3.5
.NET Framework Client ProfileSupported in: 4, 3.5 SP1
XNA FrameworkSupported in: 3.0
Portable Class LibrarySupported in: Portable Class Library
Supported in: Windows Phone 8.1
Supported in: Windows Phone Silverlight 8.1
Supported in: Windows Phone Silverlight 8