从XML文件读取空对象

时间:2013-05-01 20:34:57

标签: c# asp.net xml xmlreader

我正在尝试阅读一个简单的xml文件,但我遇到了一些问题。以下是阅读它的代码:

    XmlDocument doc = new XmlDocument();
    doc.Load("C:/file.xsd");

    XmlNode loc = doc.SelectSingleNode("/schema/annotation/appinfo");
    XmlNodeList refNode= loc.SelectNodes("referral");

这就是XML的样子:

<schema>
  <annotation>
   <appinfo>
     <referral/>
     <referral/>
     <referral/>
   </appinfo>
  </annotation>
</schema>

我为了可读性而简化了它,但我试图在'推荐'节点中阅读。我确认正在读取该文件,但'loc'变量为null。

非常感谢一些帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

以下代码给出了正确的结果,因此按给定路径选择节点没有问题。我认为你必须添加正确的命名空间才能工作。

string xml = @"<schema>
                <annotation>
                <appinfo>
                    <referral/>
                    <referral/>
                    <referral/>
                </appinfo>
                </annotation>
            </schema>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);

XmlNode loc = doc.SelectSingleNode("/schema/annotation/appinfo");
XmlNodeList refNode = loc.SelectNodes("referral");