从xml文件中提取名称空间

时间:2012-04-09 10:08:02

标签: c# xml linq-to-xml xmlreader

我正在使用C#编写XML文件。

我想要取消名称空间并进行一些操作。

说我的xml文件看起来像这样。

        <Content xmlns="http://ABCD.com/sdltridion/schemas/XXXXX">
            <first>ABCD</first>
            <second>DCEF</second>
        </Content>

我想从root标签中提取Xml命名空间,ang获取XXXXX的值。

需要输出:XXXXX

任何人都可以帮忙解决这个问题。

谢谢。

2 个答案:

答案 0 :(得分:2)

试试这个:

var xdoc = XDocument.Parse(xml);
var ns = xdoc.Root.Name.Namespace.NamespaceName;
var value = new Uri(ns).Segments.LastOrDefault();

答案 1 :(得分:0)

您可以尝试XNamespace类

 XNamespace ns = XNamespace.Get("http://ABCD.com/sdltridion/schemas/XXXXX");
 var result = XElement.Load("URL").Descendants(ns + "NODENAME"); 

由于

迪普