Xml
vb.net の既存のドキュメントに用意したテキストを追加しようとしてい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
最後の命令は、「android prefix is undeclared」という XmlException を生成します。私は、XmlNamespaceManager (行 4 ~ 5) または名前空間属性を直接書き込む (行 6) のいずれかがこれを処理するという印象を受けましたが、明らかにそうではありません。
私は何を間違っていますか?
メソッドを使用して要素を手動で記述できることはわかっていますcreateelement
が、私が示した例は問題を説明するために単純化されています。実際には、文字列は多くの属性とサブノードを"s"
含む大きな部分であり、コードですべてを手動で記述するのは面倒です。Xml
私がやりたいのはXml
、可能であれば、ドキュメント全体を追加することです。