Как прочитать пользовательский элемент из RSSFeed XML с помощью C # - PullRequest
0 голосов
/ 13 марта 2012

Я хочу прочитать данные из файла XMl в предопределенном формате, как указано

<?xml version="1.0" encoding="utf-8"?>
 <rss version="2.0" xmlns:Poll="http://www.example.com">
 <channel>
 <title>Please Enter Title</title>
 <category>Please Enter Today's Voting Poll</category>
 <link>http://www.WebsiteURL.com</link>
<description>Please Enter Description</description>
<lastBuildDate>Fri, 09 Mar 2012 10:30:55 UT</lastBuildDate>
<item>
  <title>Topic Title</title>
  <Poll:ID>Poll Id</Poll:ID>
  <Poll:Answer1>answer</Poll:Answer1>
  <Poll:Date>Date</Poll:Date>
</item>

Я не могу прочитать данные с опросом в префиксе тега элемента.

foreach (XmlNode RSSNode in RSSChannelItemList)
        {
            XmlNode RSSSubNode;
            RSSSubNode = RSSNode.SelectSingleNode("title");
            string title = RSSSubNode != null ? RSSSubNode.InnerText : "";
            XNamespace Tips = "http://www.example.com";
            RSSSubNode = RSSNode.SelectSingleNode("ID");
            string link = RSSSubNode != null ? RSSSubNode.InnerText : "";
            link = RSSSubNode!=null ? RSSSubNode.InnerXml : "";
        }

Я получаю значение заголовка отлично, но не могу получить значение идентификатора Это пользовательский тег в XMl

Может кто-нибудь подсказать мне, как это сделать

1 Ответ

1 голос
/ 13 марта 2012

Перейти по этой ссылке Просмотреть это сообщение это может быть полезно Вам просто нужно определить пространство имен и затем использовать его следующим образом

     XmlNamespaceManager nameSpace = new XmlNamespaceManager(doc.NameTable);
     nameSpace.AddNamespace("Tips", "http://www.example.com");
     RSSSubNode = RSSNode.SelectSingleNode("Tips:ID",nameSpace);
     string link = RSSSubNode != null ? RSSSubNode.InnerText : "";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...