Extensions.Remove Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Överlagringar
| Name | Description |
|---|---|
| Remove(IEnumerable<XAttribute>) |
Tar bort alla attribut i källsamlingen från dess överordnade element. |
| Remove<T>(IEnumerable<T>) |
Tar bort varje nod i källsamlingen från den överordnade noden. |
Remove(IEnumerable<XAttribute>)
Tar bort alla attribut i källsamlingen från dess överordnade 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);
static member Remove : seq<System.Xml.Linq.XAttribute> -> unit
<Extension()>
Public Sub Remove (source As IEnumerable(Of XAttribute))
Parametrar
- source
- IEnumerable<XAttribute>
En IEnumerable<T> av XAttribute dem innehåller källsamlingen.
Exempel
I följande exempel hämtas en samling attribut och anropar sedan den här metoden för att ta bort dem från deras överordnade element.
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)
Det här exemplet genererar följande utdata:
<Root Att1="1" Att2="2" />
Kommentarer
Den här metoden använder ögonblicksbildssemantik – det vill sägs att den kopierar attributen i källsamlingen till en System.Collections.Generic.List<T> innan de kopplas från sina föräldrar. Detta krävs för att undvika problem med blandad imperativ/deklarativ kod. Mer information finns i Mixed Deklarativ kod/Imperativa kodbuggar (LINQ till XML).
Se även
Gäller för
Remove<T>(IEnumerable<T>)
Tar bort varje nod i källsamlingen från den överordnade noden.
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;
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))
Typparametrar
- T
Typen av objekt i source, begränsad till XNode.
Parametrar
- source
- IEnumerable<T>
En IEnumerable<T> av XNode dem innehåller källsamlingen.
Exempel
I följande exempel hämtas en samling element. Den anropar sedan den här metoden för att ta bort elementen från det överordnade elementet.
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)
Det här exemplet genererar följande utdata:
<Root>
<Data>1</Data>
<Data>2</Data>
</Root>
Kommentarer
Den här metoden använder ögonblicksbildssemantik – det vill sägs att den kopierar attributen i källsamlingen till en List<T> innan de kopplas från sina föräldrar. Detta krävs för att undvika problem med blandad imperativ/deklarativ kod. Mer information finns i Mixed Deklarativ kod/Imperativa kodbuggar (LINQ till XML).