Extensions.Remove Method (IEnumerable(Of XAttribute))
Removes every attribute in the source collection from its parent element.
Assembly: System.Xml.Linq (in System.Xml.Linq.dll)
This method uses snapshot semantics—that is, it copies the attributes in the source collection to a System.Collections.Generic.List(Of 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 attributes, and then calls this method to remove them from their parent elements.
Dim root As XElement = <Root Att1="1" Att2="2" Att3="3" Att4="4" Att5="5"/> Dim atList = From at In root.Attributes _ Where at.Value >= 3 _ Select at atList.Remove() Console.WriteLine(root)
This example produces the following output:
<Root Att1="1" Att2="2" />
Available since 8
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Available since 8.1