Этот вопрос является логическим продолжением этого - теперь предположим, что XElement
содержит элементы в пространстве имен не по умолчанию:
<Body xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<ReportItems />
<Height />
<rd:Style />
</Body>
Я пытаюсь следовать тому же подходу, который был предложен в ответе на мой предыдущий вопрос, то есть удалить атрибут xmlns
, но он не работает, когда это префикс xmlns +, например xmlns:xx
.
TL;версия DR
Это работает:
Dim xml = <Body xmlns="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"/>
xml.Attribute("xmlns").Remove()
Это не:
Dim xml = <Body xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"/>
xml.Attribute("xmlns:rd").Remove()
Получение этой ошибки:
XmlException was unhandled
The ':' character, hexadecimal value 0x3A, cannot be included in a name.
Как удалить атрибут xmlns:xx
из XElement
?