utiliser le pack d'agilité HTML pour télécharger des flux rss et afficher des éléments d'une liste

c# html-agility-pack rss windows-phone xml

Question

J'utilise html agility pack télécharger depuis ma source rss, je peux jusqu'à présent le télécharger correctement et accéder à tous les éléments avec SelectNode, mais comment puis-je dire que j'ai un titre dans mon flux RSS et qu'il s'agit d'un nœud dans le nœud de l'élément , je peux le lire mais comment le lister sur une listbox?!

je l'utilise pour télécharger le rss

HtmlWeb.LoadAsync("http://www.wpnovosti.com/feeds/posts/default?alt=rss", DownLoadCompleted);

void DownLoadCompleted(object sender, HtmlDocumentLoadCompleted e)
    {
        if (e.Error == null)
        {
            HtmlDocument doc = e.Document;
            if (doc != null)
            {
                foreach (HtmlNode rsstitle1 in doc.DocumentNode.SelectNodes("//title")) 
                {
                    var title = doc.DocumentNode.SelectNodes("//title");

                    if (rsstitle1 != null)
                    {
                            string titleText = rsstitle1.InnerText;
                            rsstitle.Text = titleText;
                            //MessageBox.Show(titleText);
                    }
                }
            }
        }
    }

ce "rsstitle" est un élément sur la page principale un textBlock dans une listbox nommée "listBox1", je vois le strig titleText dans le textblock mais je ne vois que le dernier élément, il semble que cela tourne tout le chemin jusqu'au dernier titre de la liste des articles téléchargés. Ma question est donc comment puis-je faire une liste de tous les titres. le xml du rss ressemble à ceci:

<?xml version='1.0' encoding='UTF-8'?>
<rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0' version='2.0'>
  <channel>
    <atom:id>tag:blogger.com,1999:blog-6139395842965860280</atom:id>
    <lastBuildDate>Fri, 11 Oct 2013 13:24:41 +0000</lastBuildDate>
    <category>suma sumarum</category>
    <category>osnove</category>
    <category>glasine</category>
    <category>novosti</category>
    <category>uredaji</category>
    <category>aplikacije</category>
    <title>Windows Phone Novosti</title>
    <description>Prvi Windows Phone blog u Bosni i Hercegovini koji vama donosi sve potrebne informacije za vas omiljeni Windows Phone operativni sistem.</description>
    <link>http://www.wpnovosti.com/</link>
    <managingEditor>noreply@blogger.com (Dino Borogovac)</managingEditor>
    <generator>Blogger</generator>
    <openSearch:totalResults>451</openSearch:totalResults>
    <openSearch:startIndex>1</openSearch:startIndex>
    <openSearch:itemsPerPage>25</openSearch:itemsPerPage>
    <item>
      <guid isPermaLink='false'>tag:blogger.com,1999:blog-6139395842965860280.post-226671981499881807</guid>
      <pubDate>Fri, 11 Oct 2013 13:24:00 +0000</pubDate>
      <atom:updated>2013-10-11T15:24:41.780+02:00</atom:updated>
      <category domain='http://www.blogger.com/atom/ns#'>aplikacije</category>
      <title>Facebook Beta aplikacija sa novom nadogradnjom</title>
      <description>&lt;div align="justify"&gt;&lt;a href="http://lh4.ggpht.com/-kEftfu0aP-M/Ulf7tRs3EMI/AAAAAAAAIlo/bgmYMjOUSAg/s1600-h/IMG_2353%25255B3%25255D.jpg"&gt;&lt;img alt="IMG_2353" border="0" height="447" src="http://lh6.ggpht.com/-vomeApNFLA0/Ulf7uXzNw3I/AAAAAAAAIlw/sDhV-TsAqM8/IMG_2353_thumb.jpg?imgmax=800" style="background-image: none; border: 0px currentcolor; display: block; float: none; margin: 0px auto;" title="IMG_2353" width="670" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Facebook Beta aplikacija dobila novu nadogradnju, ovo je jedna od rijetkih aplikacija koja se redovno aktualizira sa popravkama, novostima i novim funkcijama. Facebook Beta je aplikacija koja sluzi Microsoft-u za testiranje novih funkcija prije nego sto one izadu u oficijelnu aplikaciju �Facebook�.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;U novoj verziji, koja je za WP7 kao i za WP8 Microsoft-ovi razvijaci su napisali da su dodali jos par jezika (prevoda) u aplikaciju i popravili generalno brzinu aplikacije.&lt;/div&gt;&lt;a href="http://windowsphone.com/s?appid=93da5d29-daf0-4783-9ed5-a87b33247ec6"&gt;&lt;br /&gt;&lt;table class="app-download" summary="Skinite aplikaciju iz ovog clanka"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img height="160" src="http://3.bp.blogspot.com/-eCEJytrvw6Y/UlAhObc2mMI/AAAAAAAAIiY/DlnS17mqNwE/s1600/617e6c4c-6b9f-4903-b67d-dcd71062a3e5.png" style="display: inline;" title="Facebook aplikacija" width="160" /&gt;&lt;/td&gt;&lt;td&gt;&lt;span style="font-size: x-large; font-weight: bold;"&gt;Facebook Beta&lt;/span&gt;&lt;br /&gt;od: Microsoft Corp.&lt;br /&gt;Verzija: 5.1.1.1&lt;br /&gt;Cijena: Besplatno&lt;br /&gt;&lt;br /&gt;&lt;img src="http://2.bp.blogspot.com/-wKPKvNDpPww/Uc2-U6TAYFI/AAAAAAAAHow/yNwU7HrY3jg/s241/WPS_Download_Badge+bosanski+finish.png" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/a&gt;</description>
      <link>http://www.wpnovosti.com/2013/10/facebook-beta-aplikacija-sa-novom.html</link>
      <author>noreply@blogger.com (Dino Borogovac)</author>
      <media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-vomeApNFLA0/Ulf7uXzNw3I/AAAAAAAAIlw/sDhV-TsAqM8/s72-c/IMG_2353_thumb.jpg?imgmax=800' height='72' width='72'/>
      <thr:total>0</thr:total>
    </item>

Il y a 25 autres éléments avec le même contenu intérieur comme titre, description, publication et lien. je voudrais avoir:

D'abord tous les titres d'une liste dans la page principale.

En second lieu, tous les liens sont liés aux titres. Par conséquent, si les utilisateurs appuient dessus, ils accèdent à mon autre page, où il peut transmettre l'URL à un contrôle de navigateur Web.

Troisième s'il est possible de faire une brève description sous le titre

Quatrième affichez le corps du message qui se trouve dans l’élément "description" du flux RSS déjà téléchargé, et laissez les éléments tels quels sur le flux car il existe des éléments tels que des images, des tableaux, etc., dont j’ai besoin.

Réponse populaire

Plutôt que d'utiliser Agility Pack (que vous pouvez utiliser à coup sûr), c'est une bonne idée d'utiliser des classes fournies par .NET qui peuvent vous aider à analyser et à manipuler les flux RSS. Je crois que vous voulez créer un type d’application de lecteur RSS. Il y a beaucoup d'exemples suivants qui devraient vous aider:

http://code.msdn.microsoft.com/wpapps/RSS-Reader-in-Windows-afa86457 http://mobile.dzone.com/articles/build-rss-reader-windows-phone

J'espère que cela t'aides.

Faites-nous savoir si cela résout votre problème.



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow