Extensions::Remove<T> Method (IEnumerable<T>)
Removes every node in the source collection from its parent node.
Assemblies: System.Xml.XDocument (in System.Xml.XDocument.dll)
System.Xml.Linq (in System.Xml.Linq.dll)
[ExtensionAttribute] public: generic<typename T> where T : XNode static void Remove( IEnumerable<T>^ source )
The type of the objects in source, constrained to XNode.
Usage NoteIn Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
This method uses snapshot semantics—that is, it copies the attributes in the source collection to a List<T> before disconnecting them from their parents. This is required to avoid issues with mixed imperative/declarative code. For more information, see Mixed Declarative Code/Imperative Code Bugs (LINQ to XML).
The following example retrieves a collection of elements. It then calls this method to remove the elements from their parent element.
This example produces the following output:
<Root> <Data>1</Data> <Data>2</Data> </Root>
.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