tags:

views:

23

answers:

1

I tried to use linq but failed because i have no xml knowledge.

What is the easiest way to get the id or link and updated from an rss feed? (an example feed -> http://stackoverflow.com/feeds/question/1926343)

I have no idea how to skip all elements until the first entry element. I also dont know how to pull each link and data from each elements from within the entry element

+1  A: 

Here's a minimal example of how to do this:

var url = "http://stackoverflow.com/feeds/question/1926343";
var rss = new WebClient().DownloadString(url);
var doc = XDocument.Parse(rss);
var mgr = new XmlNamespaceManager(new NameTable());
var ns = "http://www.w3.org/2005/Atom";
mgr.AddNamespace("atom", ns);

foreach (var entry in doc.XPathSelectElements("/atom:feed/atom:entry", mgr))
{
    var id = entry.Element(XName.Get("id", ns)).Value;
    var link = entry.Element(XName.Get("link", ns)).Attribute("href").Value;
    var updated = entry.Element(XName.Get("updated", ns)).Value;
    Console.WriteLine(id);
    Console.WriteLine("\tLink: " + link);
    Console.WriteLine("\tUpdated: " + updated);
}

And here's the output that it generates:

http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c
    Link: http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c
    Updated: 2009-12-18T05:21:53Z
http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926359#1926359
    Link: http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926359#1926359
    Updated: 2009-12-18T04:56:01Z
http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926361#1926361
    Link: http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926361#1926361
    Updated: 2009-12-18T04:56:06Z
http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926365#1926365
    Link: http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926365#1926365
    Updated: 2009-12-18T04:58:08Z
http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926446#1926446
    Link: http://stackoverflow.com/questions/1926343/alternative-to-thead-sleep-in-c/1926446#1926446
    Updated: 2009-12-18T05:21:53Z
Nathan Baulch
Thank you so much! :)
acidzombie24