【发布时间】:2010-10-13 13:40:36
【问题描述】:
我正在尝试从网站读取 XML-RSS-Feed。因此我使用异步下载并使用XDocument.Parse() 方法创建XDocument。
文档打算很简单,像这样:
<root>
<someAttribute></SomeAttribute>
<item>...</item>
<item>...</item>
</root>
现在我想读出所有项目。因此我尝试了:
foreach (XElement NewsEntry in xDocument.Descendants("item"))
但这不起作用。所以我在这个板子里找到了一个帖子使用限定名,因为在根元素中定义了一些命名空间:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns="http://purl.org/rss/1.0/">
好吧,我尝试了所有 3 个可用的命名空间 - 对我没有任何帮助:
XName itemName = XName.Get("item", "http://www.w3.org/1999/02/22-rdf-syntax-ns#");
XName itemName2 = XName.Get("item", "http://purl.org/dc/elements/1.1/");
XName itemName3 = XName.Get("item", "http://purl.org/rss/1.0/modules/syndication/");
任何帮助将不胜感激。 (通常我正在使用 Regex 进行 XML 分析 - 但这次我正在为移动设备开发,因此需要关心性能。)
【问题讨论】:
标签: c# linq-to-xml qualified-name xname