2009-06-22 59 views
3

我试图建立的XmlDocument,这样序列化之后,我可以做到这样的XML:如何在单个节点中使用许多xml命名空间构建XmlDocument?

<?xml version="1.0" encoding="UTF-8"?> 
<wnio:element xmlns:wnio="somuri" xmlns:xf="abcd"> 
    <xf:nestedelement>somtext</xf:nestedelement> 
</wnio:element> 

的事情之一是,XmlElement的允许通过的namespaceURI和前缀属性来指定一个命名空间。我怎样才能完成这种功能?

+0

这是实际上是“序列化”(标签)?或者只是`XmlDocument`工作。如果你不是指序列化,请忽略我关于`XmlSerializer`的回复。 – 2009-06-22 11:36:16

回答

3

属性“xmlns:wnio”和“xmlns:xf”属于任何其他属性。只需将它们添加到您希望这些XML名称空间范围扩展到的XmlElement即可。

下面的代码片段产生几乎正是你想要的:

XmlDocument document = new XmlDocument(); 
document.AppendChild(document.CreateElement("wnio", "element", "somuri")); 
document.DocumentElement.SetAttribute("xmlns:xf", "abcd"); 
document.DocumentElement.AppendChild(document.CreateElement("xf", "nestedelement", "abcd"));