为什么我的XPathNavigator总是返回Root?

时间:2009-07-20 02:31:48

标签: c# .net xml xpath

我怀疑我遗漏了一些基本但又重要的东西但是因为它我的XPath导航器总是返回根。

我有一些像这样的XML数据:

<?xml version="1.0" encoding="utf-8" ?>
<language>
  <header>
    <about>about</about>
    <faqs>faqs</faqs>
    <feedback>feedback</feedback>
    <submitblog>submit a blog</submitblog>
    <advertise>advertise</advertise>
  </header>
</language>

我有一个用文档初始化的XPathNavigator。我这样称呼它:

XPathNodeIterator iterator = (XPathNodeIterator)xNav.Evaluate("language/header/about");
            return iterator.Current.Value;

它每次都给我根源(看起来像这样:'aboutfaqsfeedbacksubmit a blogadvertise'。)

我做错了什么?教育我。

1 个答案:

答案 0 :(得分:5)

在返回当前值之前,你应该在迭代器上调用MoveNext()

来源:http://msdn.microsoft.com/en-us/library/system.xml.xpath.xpathnodeiterator.aspx