准确地说谈不上是一个阅读器,因为目前只显示rss源的标题
首先用一个xml文档来存储一些rss列表,结构如下:
<?xml version="1.0" encoding="utf-8" ?>
<feeds>
<feed enable="true">
<site>幻想曲.Net</site>
<url>http://www.lemongtree.com</url>
<rss>http://www.lemongtree.com/rss.axd</rss>
</feed>
<feed enable="true">
<site>大脑门</site>
<url>http://www.iceapple.net</url>
<rss>http://www.iceapple.net/syndication.axd</rss>
</feed>
<feed enable="true">
<site>CnBlogs</site>
<url>http://www.cnblogs.com</url>
<rss>http://www.cnblogs.com/rss</rss>
</feed>
<feed enable="true">
<site>BlueIdea</site>
<url></url>
<rss>http://bbs.blueidea.com/rss.php</rss>
</feed>
</feeds>
enable属性表示该站点是否有效,false表示无效
展示页面中的dropdownlist数据源就来自于此

选择一个rss源,点击read,显示

[code:c#]
public class RssItem
{
public RssItem()
{
//
// TODO: Add constructor logic here
//
}
public RssItem(string title, string url, DateTime date)
{
Title = title;
URL = url;
PubDate = date;
}
public string Title { get; set; }
public string URL { get; set; }
public DateTime PubDate { get; set; }
public List<RssItem> GetList(string rssurl)
{
List<RssItem> list = new List<RssItem>();
//try
//{
XDocument doc = XDocument.Load(rssurl);
var feeds = from feed in doc.Descendants("item")
select new RssItem
{
PubDate = Convert.ToDateTime(feed.Element("pubDate").Value),
Title = feed.Element("title").Value,
URL = feed.Element("link").Value
};
list = feeds.ToList();
//}
//catch
//{
//}
return list;
}
}
[/code]
因暂无.net 3.5的空间,故无法放出演示了
RssReader.rar (4.65 kb)