写 xml 前缀 c#

write xml prefix c#

我正在尝试在 C# 中创建一个 xml 并指定命名空间,然后在每个元素上指定前缀。

<bk:library xmlns:bk="www.namespace.com/ww">
<bk:books>
<bk:book>
<bk:title>Title </bk:book>
</bk:book>
<bk:books>
</bk:library>

我完成了以下代码:

XmlDocument doc = new XmlDocument();
root = doc.AppendChild(doc.CreateElement("library"));
var booksNode = root.appendChild(doc.CreateElement("bk","books","www.namespace.com/ww"));
Console.WriteLine(doc.OuterXml);

我得到这样的结果:

<bk:books xmlns:bk="www.namespace.com/ww">

因此它同时输出前缀和命名空间

它没有像我想要的那样输出 xml(如上所示)。

知道如何让 xml 像我展示的那样输出吗?

谢谢

试试这个

XmlDocument doc = new XmlDocument();
XmlElement  root = (XmlElement)doc.AppendChild(doc.CreateElement("bk","library","www.namespace.com/ww"));
var booksNode = root.AppendChild(doc.CreateElement("bk", "books", "www.namespace.com/ww"));
Console.WriteLine(doc.OuterXml);