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 этот метод. Этот метод копирует атрибуты в список, а затем выполняет итерацию по списку, удалив атрибуты.