Extensions.Remove Método

Definição

Sobrecargas

Remove(IEnumerable<XAttribute>)

Remove cada atributo na coleção de origem do respectivo elemento pai.

Remove<T>(IEnumerable<T>)

Remove todos os nós na coleção de origem do respectivo nó pai.

Remove(IEnumerable<XAttribute>)

Remove cada atributo na coleção de origem do respectivo elemento pai.

C#
public static void Remove (this System.Collections.Generic.IEnumerable<System.Xml.Linq.XAttribute> source);
C#
public static void Remove (this System.Collections.Generic.IEnumerable<System.Xml.Linq.XAttribute?> source);

Parâmetros

source
IEnumerable<XAttribute>

Um IEnumerable<T> do XAttribute que contém a coleção de origem.

Exemplos

O exemplo a seguir recupera uma coleção de atributos e chama esse método para removê-los de seus elementos pai.

C#
XElement root = new XElement("Root",  
    new XAttribute("Att1", 1),  
    new XAttribute("Att2", 2),  
    new XAttribute("Att3", 3),  
    new XAttribute("Att4", 4),  
    new XAttribute("Att5", 5)  
);  

IEnumerable<XAttribute> atList =  
    from at in root.Attributes()  
    where (int)at >= 3  
    select at;  

atList.Remove();  

Console.WriteLine(root);  

Esse exemplo gera a saída a seguir:

<Root Att1="1" Att2="2" />  

Comentários

Esse método usa semântica de instantâneo – ou seja, copia os atributos na coleção de origem para um System.Collections.Generic.List<T> antes de desconectá-los de seus pais. Isso é necessário para evitar problemas com código imperativo/declarativo misto. Para obter mais informações, consulte Código Declarativo Misto/Bugs de Código Imperativo (LINQ to XML).

Confira também

Aplica-se a

.NET 7 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Remove<T>(IEnumerable<T>)

Remove todos os nós na coleção de origem do respectivo nó pai.

C#
public static void Remove<T> (this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XNode;
C#
public static void Remove<T> (this System.Collections.Generic.IEnumerable<T?> source) where T : System.Xml.Linq.XNode;

Parâmetros de tipo

T

O tipo dos objetos em source, restritos para XNode.

Parâmetros

source
IEnumerable<T>

Um IEnumerable<T> do XNode que contém a coleção de origem.

Exemplos

O exemplo a seguir recupera uma coleção de elementos. Em seguida, ele chama esse método para remover os elementos de seu elemento pai.

C#
XElement root = new XElement("Root",  
    new XElement("Data", 1),  
    new XElement("Data", 2),  
    new XElement("Data", 3),  
    new XElement("Data", 4),  
    new XElement("Data", 5)  
);  

IEnumerable<XElement> elList =  
    from el in root.Elements()  
    where (int)el >= 3  
    select el;  

elList.Remove();  

Console.WriteLine(root);  

Esse exemplo gera a saída a seguir:

<Root>  
  <Data>1</Data>  
  <Data>2</Data>  
</Root>  

Comentários

Esse método usa semântica de instantâneo – ou seja, copia os atributos na coleção de origem para um List<T> antes de desconectá-los de seus pais. Isso é necessário para evitar problemas com código imperativo/declarativo misto. Para obter mais informações, consulte Código Declarativo Misto/Bugs de Código Imperativo (LINQ to XML).

Confira também

Aplica-se a

.NET 7 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0