使用LINQ和前缀编写XML片段

时间:2010-05-12 16:16:01

标签: namespaces linq-to-xml fragment

我有一个在构造函数中创建的文档,并且在执行期间我正在填充 它使用自定义业务对象生成的片段。

当我输出片段时,我需要包含命名空间片段,但是 我想避免将命名空间url添加到每个片段,因为它是在根目录中定义的。

有什么想法吗?

_doc = new XDocument(
            new XDeclaration("1.0", "UTF-8", "yes"),
            new XElement(aw + "kml",
                new XAttribute(XNamespace.Xmlns + "gx", "http://www.google.com/kml/ext/2.2"),
                new XAttribute("xmlns", "http://www.opengis.net/kml/2.2"),
                new XElement(aw+"Document",

这就是doc开始的方式,所以命名空间就在那里。 如何使用gx前缀构建要添加的XElement?

1 个答案:

答案 0 :(得分:1)

XNamespace使用相同的URI:

XNamespace gx = "http://www.google.com/kml/ext/2.2";
XElement foo = new XElement(gx + "foo");

LINQ to XML将自动使用适当的前缀,据我所知。