XDocument — преобразование открывающихся и закрывающихся тегов в самозакрывающийся тегC#

Место общения программистов C#
Ответить
Anonymous
 XDocument — преобразование открывающихся и закрывающихся тегов в самозакрывающийся тег

Сообщение Anonymous »

Я пишу это, потому что нашел много сообщений здесь и в других местах, в которых задается вопрос о хорошем способе изменения самозакрывающихся тегов в объекте C# XDocument на открывающий и закрывающий тег с пустым значением. p>
Я хочу сделать наоборот. Я хочу это изменить: на это: Я хочу сохранить все атрибуты и их значения, которые были в элементе раньше, ЗА ИСКЛЮЧЕНИЕМ пустых значений.
Вот последние данные что я пробовал:

Код: Выделить всё

private static void CleanUpXElements(XDocument doc)
{
foreach (XElement childElement in
from x in doc.DescendantNodes().OfType()
where x.Value == string.Empty
select x)
{
childElement.ReplaceWith(new XElement(childElement.Name.LocalName, childElement.Attributes()));
};
}
Однако, когда я использую этот подход, я получаю нулевое исключение, когда рассматриваемый дочерний элемент заменяется таким образом.
Есть ли способ Я могу сделать это, не создавая исключение нулевой ссылки? Я вижу, что элемент меняется на самозакрывающийся тег, но затем возникает нулевое исключение.

Подробнее здесь: https://stackoverflow.com/questions/791 ... losing-tag
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»