Extensions.Remove Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
Remove(IEnumerable<XAttribute>) |
Odebere všechny atributy ve zdrojové kolekci z nadřazeného prvku. |
Remove<T>(IEnumerable<T>) |
Odebere každý uzel ve zdrojové kolekci z nadřazeného uzlu. |
Remove(IEnumerable<XAttribute>)
- Zdroj:
- Extensions.cs
- Zdroj:
- Extensions.cs
- Zdroj:
- Extensions.cs
Odebere všechny atributy ve zdrojové kolekci z nadřazeného prvku.
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))
Parametry
- source
- IEnumerable<XAttribute>
, IEnumerable<T>XAttribute která obsahuje zdrojovou kolekci.
Příklady
Následující příklad načte kolekci atributů a poté zavolá tuto metodu, která je odebere z nadřazených prvků.
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)
Tento příklad vytvoří následující výstup:
<Root Att1="1" Att2="2" />
Poznámky
Tato metoda používá sémantiku snímků – to znamená, že zkopíruje atributy ve zdrojové kolekci do objektu System.Collections.Generic.List<T> před odpojením od jejich nadřazených prvků. To je nutné, aby se zabránilo problémům se smíšeným imperativním/deklarativním kódem. Další informace najdete v tématu Smíšené chyby deklarativního kódu nebo imperativního kódu (LINQ to XML).
Viz také
Platí pro
Remove<T>(IEnumerable<T>)
- Zdroj:
- Extensions.cs
- Zdroj:
- Extensions.cs
- Zdroj:
- Extensions.cs
Odebere každý uzel ve zdrojové kolekci z nadřazeného uzlu.
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))
Parametry typu
- T
Typ objektů v source
objektu je omezený na XNode.
Parametry
- source
- IEnumerable<T>
, IEnumerable<T>XNode která obsahuje zdrojovou kolekci.
Příklady
Následující příklad načte kolekci elementů. Potom zavolá tuto metodu k odebrání elementů z nadřazeného elementu.
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)
Tento příklad vytvoří následující výstup:
<Root>
<Data>1</Data>
<Data>2</Data>
</Root>
Poznámky
Tato metoda používá sémantiku snímků – to znamená, že zkopíruje atributy ve zdrojové kolekci do objektu List<T>
před odpojením od jejich nadřazených prvků. To je nutné, aby se zabránilo problémům se smíšeným imperativním/deklarativním kódem. Další informace najdete v tématu Smíšené chyby deklarativního kódu nebo imperativního kódu (LINQ to XML).