您的位置:首页 > 其它

WCF+Silverlight 制作一个简单RSS的阅读器(一)

2008-12-16 22:34 323 查看
很喜欢Silverlight,可能以前比较喜欢Flash制作的缘故吧,只是最后还是从事了 winForm的开发,毕竟WinForm的工作比较好找,自己的美工技术也一般。
这段时间一直在学习Silverlight之中,边学习边写博客吧,希望能和朋友们一起分享Silverlight的快乐。同时能解决一些实际中的问题,毕竟现在Silverlight的资料还是太少了。
言归正传:
1、起初我的想法是直接利用从CodeProject中下载的Racoom的动态库,并采用数据绑定的方式来直接完成Rss的阅读,估计可能只要一个小时。事实证明这种方法是行不通的,因为Silverlight对很多类库都不支持,必须使用Silverlight本身的动态库才可以。
2、那怎么办?自己重写一个吧,新建一个Silverlight库,创建一个RSSChannel,

Code
[ServiceContract]
public interface IRssService
{
[OperationContract]
List<RssXml.RssItem> GetRssItems(string location);
[OperationContract]
void DoWork();
}

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class RssService : IRssService
{

#region IRssService Members

List<RssXml.RssItem> IRssService.GetRssItems(string location)
{
Uri uri = new Uri(location);
RssChannel channel = new RssChannel(uri);
List<RssXml.RssItem> items = new List<RssXml.RssItem>();
for (int i = 0; i < channel.Items.Count; i++)
{
RssXml.RssItem item = new RssXml.RssItem();
item.Title = channel.Items[i].Title;
item.Comments = channel.Items[i].Comments;
item.Description = channel.Items[i].Description;
item.Link = channel.Items[i].Link;
items.Add(item);
}
return items;
}

#endregion

#region IRssService Members

public void DoWork()
{
string s = "Do it";
}

#endregion
}

想不到内容写起来还真多,只能明天晚上继续了(怎么感觉像天涯上骗回帖的)。
公告栏里有我的程序演示,如果显示报错,就是我没开服务器了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐