我肯定会在这里遗漏一些重要的细节。我只是无法使 .NET 的 XPath 与 Visual Studio 项目文件一起工作。
让我们加载一个 xml 文档:
var doc = new XmlDocument();
doc.Load("blah/blah.csproj");
现在执行我的查询:
var nodes = doc.SelectNodes("//ItemGroup");
Console.WriteLine(nodes.Count); // whoops, zero
当然,文件中有名为 ItemGroup 的节点。此外,此查询有效:
var nodes = doc.SelectNodes("//*/@Include");
Console.WriteLine(nodes.Count); // found some
对于其他文档,XPath 工作得很好。我对此感到非常困惑。谁能解释一下发生了什么?