У меня была похожая проблема (мне нужно было удалить атрибут пространства имен из определенного элемента, а затем вернуть XML как XmlDocument
в BizTalk), но причудливое решение.
Перед загрузкой строки XML в объект XmlDocument
я произвел замену текста, чтобы удалить некорректный атрибут пространства имен. Сначала это казалось неправильным, так как я получил XML, который не мог быть проанализирован «визуализатором XML» в Visual Studio. Это то, что изначально оттолкнуло меня от такого подхода.
Однако текст все еще может быть загружен в XmlDocument
, и я могу вывести его в BizTalk нормально.
Обратите внимание, что ранее я попал в один тупик при попытке использовать childNode.Attributes.RemoveAll()
для удаления атрибута пространства имен - он просто вернулся снова!