Udostępnij za pośrednictwem


XAttribute.Remove Metoda

Definicja

Usuwa ten atrybut z elementu nadrzędnego.

public:
 void Remove();
public void Remove ();
member this.Remove : unit -> unit
Public Sub Remove ()

Wyjątki

Element nadrzędny to null.

Przykłady

Poniższy przykład tworzy element z trzema atrybutami. Następnie usuwa jeden z atrybutów.

XElement root = new XElement("Root",  
    new XAttribute("Att1", "content1"),  
    new XAttribute("Att2", "content2"),  
    new XAttribute("Att3", "content3")  
);  
XAttribute att = root.Attribute("Att2");  
att.Remove();  
Console.WriteLine(root);  
Dim root As XElement = <Root Att1="content1" Att2="content2" Att3="content3"/>  
Dim att As XAttribute = root.Attribute("Att2")  
att.Remove()  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:

<Root Att1="content1" Att3="content3" />  

Uwagi

Za pomocą tej metody można zmodyfikować drzewo XML. Ta metoda spowoduje wystąpienie zdarzeń.

Istnieje wiele scenariuszy, w których można usunąć zestaw atrybutów. W LINQ to XML programowaniu nie należy manipulować ani modyfikować zestawu węzłów podczas wykonywania zapytań dotyczących węzłów w tym zestawie. W praktyce oznacza to, że nie należy iterować zestawu atrybutów i usuwać je. Zamiast tego należy zmaterializować je w metodzie List<T> ToList rozszerzenia przy użyciu metody rozszerzenia. Następnie można iterować na liście, usuwając atrybuty. Aby uzyskać więcej informacji, zobacz Mixed Deklaratative Code/Imperatywne błędy kodu (LINQ to XML).

Alternatywnie, jeśli chcesz usunąć zestaw atrybutów, zaleca się użycie Extensions.Remove metody . Ta metoda kopiuje atrybuty do listy, a następnie iteruje na liście, usuwając atrybuty.

Dotyczy

Zobacz też