[英]XDocument Elements return null
我有一个xml,我正在尝试获取特定xname的元素,所以即时尝试做...
XDocument doc = XDocument.Load("C://some.xml");
XDocument subDoc = new XDocument(doc.Elements("data"));
但在subDoc中没有返回任何元素,我知道我有一个名为data的元素,我也试过了命名空间但没有返回任何元素。
我想知道我是否只能获得数据(包括)和他的孩子的XDocument。
some.xml
<chart xmlns="http://www.somenamespace.com">
<data>
<table>
<columns>
<column id="001" label="A"/>
<column id="002" label="B"/>
<column id="003" label="C"/>
<column id="004" label="D"/>
</columns>
<rows>
<row>
<cell>
<float value="30"/>
</cell>
<cell>
<float value="35"/>
</cell>
<cell>
<float value="15"/>
</cell>
<cell>
<float value="18"/>
</cell>
</row>
</rows>
</table>
</data>
<render />
</chart>
有人可以帮忙吗?
谢谢
将System.Linq命名空间指令添加到文件的顶部:
using System.Linq;
试试这个:
XDocument doc = XDocument.Load("c:\\some.xml");
XName name = XName.Get("data", doc.Root.GetDefaultNamespace().NamespaceName);
XDocument subDoc = new XDocument(doc.Descendants(name).First());
您的直接元素节点可能不是“数据”...请尝试后代
doc.Descendants("data");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.