我是Twitter API的新手,现在我尝试从Twitter的xml数据获取地理标记

我获取地理代码的代码是

XmlNode eNode = xn.SelectSingleNode("coordinates/georss:point");


错误是

XPathException无法通过用户代码处理

-需要名称空间管理器或XsltContext。该查询具有前缀,变量或用户定义的函数。

但是对于其他数据(例如名称,文本或ID),可以正常使用

谢谢您的帮助^^

最佳答案

它说出了真相。只需声明一个XmlNamespaceManager,然后告诉它uri“ georss”指的是:

XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("georss", "http://www.georss.org/georss");


并将ns传递到SelectSingleNode调用中:

XmlNode eNode = xn.SelectSingleNode("coordinates/georss:point", nsmgr);


您应该可以从xml顶部的xmlns别名声明中找到uri(编辑:@dtb已找到它)。

10-06 09:54