XLinq帮助不大



我有这个XML:

<Test>
    <element>toto</element>
    <element>tata</element>
</Test>

如何获取节点"元素"?。我在网上看到我可以用获得它们

var elements = from element in xmlDoc.Descendants("element")
               select element;

但是"元素"是空的!

编辑1:我正在用这个确切的XML:加载XDocument

<Test xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices">
    <element>toto</element>
    <element>tata</element>
</Test>

好吧,这是您的问题,您的名称必须使用适当的XML命名空间进行限定。

XNamespace ns = "http://schemas.microsoft.com/ado/2007/08/dataservices";
var elements = xmlDoc.Descendants(ns + "element");

创建XDocument对象的方式可能有问题。以下代码对我来说很好:

var doc = XDocument.Parse(@"
    <Test>
        <element>toto</element>
        <element>tata</element>
    </Test>");
var elements = doc.Descendants("element");
//prints "2"
Console.WriteLine(elements.Count());

相关内容

  • 没有找到相关文章

最新更新