XAttribute.Remove Метод

Определение

Удаляет этот атрибут из родительского элемента.

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

Исключения

Родительский элемент — null.

Примеры

В следующем примере создается элемент с тремя атрибутами. Затем он удаляет один из атрибутов.

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)

В примере получается следующий вывод.

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

Комментарии

Этот метод можно использовать для изменения дерева XML. Этот метод приведет к возникновению событий.

Существует множество сценариев, в которых может потребоваться удалить набор атрибутов. В программировании LINQ to XML не следует управлять набором узлов или изменять их при запросе узлов в этом наборе. Практически это означает, что не следует выполнять итерацию по набору атрибутов и удалять их. Вместо этого следует материализовать их в List<T>ToList метод расширения. Затем можно выполнить итерацию по списку, удалив атрибуты. Дополнительные сведения см. в статье об ошибках смешанного декларативного кода и императивного кода (LINQ to XML).

Кроме того, если вы хотите удалить набор атрибутов, рекомендуется использовать Extensions.Remove этот метод. Этот метод копирует атрибуты в список, а затем выполняет итерацию по списку, удалив атрибуты.

Применяется к

См. также раздел