Entfernen xmlns-Attribut mit Namensraum-Präfix

Diese Frage ist eine logische Fortsetzung diese eine - jetzt nehmen wir an, eine XElement Elemente enthält, die in einem nicht-Standard-namespace:

<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>

Ich versuche zu Folgen Sie den gleichen Ansatz wie bereits in der Antwort auf meine Vorherige Frage, D. H. entfernen xmlns - Attribut, aber es funktioniert nicht, wenn es xmlns + Präfix, wie dies xmlns:xx.

TL;DR-version

Dies funktioniert:

Dim xml = <Body xmlns="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"/>
xml.Attribute("xmlns").Remove()

Diese nicht:

Dim xml = <Body xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"/>
xml.Attribute("xmlns:rd").Remove()

Immer diese Fehlermeldung:

XmlException was unhandled
The ':' character, hexadecimal value 0x3A, cannot be included in a name.

Wie Entferne ich xmlns:xx Attribut aus einer XElement?

InformationsquelleAutor Neolisk | 2012-11-28
Schreibe einen Kommentar