Я пытаюсь добавить фрагмент Xml
текст, который я подготовил к существующему документу в vb.net, я использую класс XmlDocument
. Вот мой код (упрощенно объяснить проблему):C#/vb.net - Добавить текст XML в XmlDocument
Dim s As String = "<RelativeLayout android:layout_width=""fill_parent"" android:layout_height=""fill_parent"" android:layout_weight=""1.0"" />"
Dim tempdoc = New XmlDocument()
tempdoc.LoadXml("<doc />")
ns = New XmlNamespaceManager(tempdoc.NameTable)
ns.AddNamespace("android", "http://schemas.android.com/apk/res/android")
tempdoc.DocumentElement.SetAttribute("xmlns:android", "http://schemas.android.com/apk/res/android")
Dim frag = tempdoc.CreateDocumentFragment()
frag.InnerXml = s
Последняя инструкция генерирует XmlException, который считывает «андроид префикс необъявленный» я был под впечатлением, что либо XmlNamespaceManager (строки 4-5) или записи атрибут пространства имен напрямую (строка 6) позаботится об этом, но, по-видимому, нет.
Что я делаю неправильно?
Я знаю, что могу просто написать элемент вручную с помощью метода createelement
, но пример, который я дал, упрощен, чтобы объяснить проблему. В действительности строка "s"
- это большой кусок Xml
с множеством атрибутов и подузлов, написав все это вручную с помощью кода. Что я хочу сделать, добавьте весь фрагмент Xml
к документу, если это возможно.