удалить вложенные элементы из XML, используя LINQ to XML - PullRequest
0 голосов
/ 22 февраля 2011

Я хочу удалить вложенные элементы из документа XML с помощью LINQ to XML.

образец XML:

<MainElement>
<otherelement />
<removeElement att='1'>
<removeElement att='2'>
<removeElement att='3'>
<removeElement att='4'>
</MainElement>

Я хочу, чтобы вывод был

<MainElement>
<otherelement />
<removeElement att='2'>
</MainElement>

Структура (схема) должна оставаться как есть, а выбранный элемент должен оставаться в документе XML.

запросы, которые я пробовал, помогают мне найти этот элемент в XML, однако, как мне поддерживать структуру XML

1 Ответ

1 голос
/ 22 февраля 2011

Напишите запрос, чтобы найти узлы, которые вы хотите удалить, и удалите их.

XDocument doc = ...;
doc.Root
   .Elements("removeElement")
   .Where(e => (int)e.Attribute("att") != 2)
   .Remove(); // removes all elements in this query
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...