Extensions.Remove Methode

Definition

Überlädt

Remove(IEnumerable<XAttribute>)

Entfernt jedes Attribut in der Quellauflistung aus seinem übergeordneten Element.

Remove<T>(IEnumerable<T>)

Entfernt jeden Knoten in der Quellauflistung aus seinem übergeordneten Knoten.

Remove(IEnumerable<XAttribute>)

Quelle:
Extensions.cs
Quelle:
Extensions.cs
Quelle:
Extensions.cs

Entfernt jedes Attribut in der Quellauflistung aus seinem übergeordneten Element.

public:
[System::Runtime::CompilerServices::Extension]
 static void Remove(System::Collections::Generic::IEnumerable<System::Xml::Linq::XAttribute ^> ^ source);
public static void Remove (this System.Collections.Generic.IEnumerable<System.Xml.Linq.XAttribute> source);
public static void Remove (this System.Collections.Generic.IEnumerable<System.Xml.Linq.XAttribute?> source);
static member Remove : seq<System.Xml.Linq.XAttribute> -> unit
<Extension()>
Public Sub Remove (source As IEnumerable(Of XAttribute))

Parameter

source
IEnumerable<XAttribute>

Ein IEnumerable<T> vom Typ XAttribute, das die Quellauflistung enthält.

Beispiele

Im folgenden Beispiel wird eine Auflistung von Attributen abgerufen und dann diese Methode aufgerufen, um sie aus den übergeordneten Elementen zu entfernen.

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);  
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)  

Dieses Beispiel erzeugt die folgende Ausgabe:

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

Hinweise

Diese Methode verwendet Momentaufnahmesemantik, d. h., sie kopiert die Attribute in der Quellauflistung in ein, System.Collections.Generic.List<T> bevor sie von ihren übergeordneten Elementen getrennt werden. Dies ist erforderlich, um Probleme mit gemischtem imperativem/deklarativem Code zu vermeiden. Weitere Informationen finden Sie unter Mixed Declarative Code/Imperative Code Bugs (LINQ to XML).

Weitere Informationen

Gilt für:

Remove<T>(IEnumerable<T>)

Quelle:
Extensions.cs
Quelle:
Extensions.cs
Quelle:
Extensions.cs

Entfernt jeden Knoten in der Quellauflistung aus seinem übergeordneten Knoten.

public:
generic <typename T>
 where T : System::Xml::Linq::XNode[System::Runtime::CompilerServices::Extension]
 static void Remove(System::Collections::Generic::IEnumerable<T> ^ source);
public static void Remove<T> (this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XNode;
public static void Remove<T> (this System.Collections.Generic.IEnumerable<T?> source) where T : System.Xml.Linq.XNode;
static member Remove : seq<'T (requires 'T :> System.Xml.Linq.XNode)> -> unit (requires 'T :> System.Xml.Linq.XNode)
<Extension()>
Public Sub Remove(Of T As XNode) (source As IEnumerable(Of T))

Typparameter

T

Der Typ der Objekte in source, auf XNode beschränkt.

Parameter

source
IEnumerable<T>

Ein IEnumerable<T> vom Typ XNode, das die Quellauflistung enthält.

Beispiele

Im folgenden Beispiel wird eine Auflistung von Elementen abgerufen. Anschließend wird diese Methode aufgerufen, um die Elemente aus dem übergeordneten Element zu entfernen.

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);  
Dim root As XElement = _  
    <Root>  
        <Data>1</Data>  
        <Data>2</Data>  
        <Data>3</Data>  
        <Data>4</Data>  
        <Data>5</Data>  
    </Root>  

Dim elList = From el In root.Elements _  
             Where el.Value >= 3 _  
             Select el  

elList.Remove()  

Console.WriteLine(root)  

Dieses Beispiel erzeugt die folgende Ausgabe:

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

Hinweise

Diese Methode verwendet Momentaufnahmesemantik, d. h., sie kopiert die Attribute in der Quellauflistung in ein, List<T> bevor sie von ihren übergeordneten Elementen getrennt werden. Dies ist erforderlich, um Probleme mit gemischtem imperativem/deklarativem Code zu vermeiden. Weitere Informationen finden Sie unter Mixed Declarative Code/Imperative Code Bugs (LINQ to XML).

Weitere Informationen

Gilt für: