我试图用C#和.NET(2.0版,是的,2.0版)创建一个XmlDocument
。我已经设置使用命名空间属性:用XmlDocument.CreateElement()创建一个名称空间的XML元素
document.DocumentElement.SetAttribute(
"xmlns:soapenv", "http://schemas.xmlsoap.org/soap/envelope");
当我创建使用新XmlElement
:
document.createElement("soapenv:Header");
...它不包括在最后的XML命名空间soapenv
。任何想法为什么发生这种情况
更多信息:
好吧,我会尽力澄清这个问题有点。我的代码是:
XmlDocument document = new XmlDocument();
XmlElement element = document.CreateElement("foo:bar");
document.AppendChild(element); Console.WriteLine(document.OuterXml);
输出:
<bar />
不过,我要的是:
<foo:bar />
-1你不必明确创建'xmlns' “属性”。这是一个名称空间声明,只是创建一个使用名称空间的元素将导致该属性奇迹般地出现。 –
好的,我试着澄清这个问题。 我的代码是 XmlDocument document = new XmlDocument(); XmlElement element = document.CreateElement(“foo:bar”); document.AppendChild(element); Console.WriteLine(document.OuterXml); ...它会输出 ......它应该输出 –