使用XNamespace创建格式良好的XML

时间:2010-04-03 18:35:27

标签: linq-to-xml xattribute xnamespace

我想创建一个看起来像这样的Xml文件:

< Root xmlns:ns1 =“name1”xmlns:ns2 =“name2”>

< ns1:element1 />
< ns1:element2 />
< ns2:element3 />
< /根和GT;

如何使用动态添加名称空间的XAttribute,XElement,XNamespace和XDocument来实现此目的。

1 个答案:

答案 0 :(得分:3)

我假设“命名空间是动态添加的”你的意思是命名空间前缀。这会生成文档,它与您的意思有多接近?

        XNamespace ns1 = "name1", ns2 = "name2";

        XElement elem = new XElement("Root", 
                new XAttribute(XNamespace.Xmlns + "ns1", ns1), 
                new XAttribute(XNamespace.Xmlns + "ns2", ns2),
                new XElement(ns1 + "element1"),
                new XElement(ns1 + "element2"),
                new XElement(ns2 + "element3"));

        elem.Save("example.xml");