在WEB 2.0的时代,我们很难在一个Web2.0的网站上不发现RSS,我们可以通过RSS阅读器来订阅特定网站的更新及新闻等等。随着VISTA的普及很多人也会在桌面上的Windows 边栏上订阅以方便每次开机是即可看到该网站上的更新。RSS只是几个特殊XML标记组成的,我很想知道那些标签的含义来定义自己的RSS。在本文中将看到RSS中几个重要的标签,当我们了解了RSS标签我们就可以通过
首先我们要知道的是XML的格式,就是一对闭合的标签,顶端有个<xml/>标记包含字符集及版本等一般采用UTF-8,版本为1.0。当然RSS文档标签肯定就是RSS了,由于RSS有多个版本以此也要加上版本,可以声明一些命名空间(?...)。(注意:XML可是大小写敏感的哦)
以上就是RSS2.0的基本格式,列出的都是必须的标记,当然还有很多可选标记。我们可以通过下面的代码来完成我们的RSS,当然我们一般都是从数据库中取出符合的记录然后通过下列方法来输出订阅内容。
XmlTextWriter
对象来组合我们自己的RSS文件。
首先我们要知道的是XML的格式,就是一对闭合的标签,顶端有个<xml/>标记包含字符集及版本等一般采用UTF-8,版本为1.0。当然RSS文档标签肯定就是RSS了,由于RSS有多个版本以此也要加上版本,可以声明一些命名空间(?...)。(注意:XML可是大小写敏感的哦)
1
<?
xml version="1.0" encoding="utf-8"
?>
2 < rss version ="2.0" >
3 < channel >
4 < title ></ title >
5 < link ></ link >
6 < description ></ description >
7
8
9 < item >
10
11 </ item >
12 </ channel >
13 </ rss >
2 < rss version ="2.0" >
3 < channel >
4 < title ></ title >
5 < link ></ link >
6 < description ></ description >
7
8
9 < item >
10
11 </ item >
12 </ channel >
13 </ rss >
以上就是RSS2.0的基本格式,列出的都是必须的标记,当然还有很多可选标记。我们可以通过下面的代码来完成我们的RSS,当然我们一般都是从数据库中取出符合的记录然后通过下列方法来输出订阅内容。
1
//
清除输出缓存
2 Response.Clear();
3 // 设置输出类型
4 Response.ContentType = " text/xml " ;
5
6 // 初始化XmlTextWriter类
7 XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
8
9 // 写入<?xml version="1.0" encoding="utf-8"?>
10 writer.WriteStartDocument();
11
12 // 写入<rss version="2.0">
13 writer.WriteStartElement( " rss " );
14 writer.WriteAttributeString( " version " , " 2.0 " );
15
16 // 写入<channel>
17 writer.WriteStartElement( " channel " );
18
19 // 写入<title/><link/><description/>必须项,同时加入版权<copyright/>
20 writer.WriteElementString( " title " , " .NET人字拖 " );
21 writer.WriteElementString( " link " , " http://www.mshelper.cn/ " );
22 writer.WriteElementString( " description " , " 我的博客 " );
23 writer.WriteElementString( " copyright " , " Copyright " + DateTime.Now.Year.ToString() + " . All rights reserved. " );
24
25 // 循环输出item项。
26 while (statement)
27 {
28 writer.WriteStartElement( " item " );
29 writer.WriteElementString( " title " , " Rss标签 " );
30 writer.WriteElementString( " description " , " 介绍 " );
31 writer.WriteElementString( " link " , " http://www.mshelper.cn/id=1 " );
32 writer.WriteEndElement();
33 }
34 dr.Close();
35
36 // 闭合标签
37 writer.WriteEndElement();
38 writer.WriteEndElement();
39 writer.WriteEndDocument();
40 // 释放缓存,输出。
41 writer.Flush();
42 writer.Close();
2 Response.Clear();
3 // 设置输出类型
4 Response.ContentType = " text/xml " ;
5
6 // 初始化XmlTextWriter类
7 XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
8
9 // 写入<?xml version="1.0" encoding="utf-8"?>
10 writer.WriteStartDocument();
11
12 // 写入<rss version="2.0">
13 writer.WriteStartElement( " rss " );
14 writer.WriteAttributeString( " version " , " 2.0 " );
15
16 // 写入<channel>
17 writer.WriteStartElement( " channel " );
18
19 // 写入<title/><link/><description/>必须项,同时加入版权<copyright/>
20 writer.WriteElementString( " title " , " .NET人字拖 " );
21 writer.WriteElementString( " link " , " http://www.mshelper.cn/ " );
22 writer.WriteElementString( " description " , " 我的博客 " );
23 writer.WriteElementString( " copyright " , " Copyright " + DateTime.Now.Year.ToString() + " . All rights reserved. " );
24
25 // 循环输出item项。
26 while (statement)
27 {
28 writer.WriteStartElement( " item " );
29 writer.WriteElementString( " title " , " Rss标签 " );
30 writer.WriteElementString( " description " , " 介绍 " );
31 writer.WriteElementString( " link " , " http://www.mshelper.cn/id=1 " );
32 writer.WriteEndElement();
33 }
34 dr.Close();
35
36 // 闭合标签
37 writer.WriteEndElement();
38 writer.WriteEndElement();
39 writer.WriteEndDocument();
40 // 释放缓存,输出。
41 writer.Flush();
42 writer.Close();
以上仅列出类部分标签,其实还有很多很实用的标签但是以上的标签对于一个普通的内容已经足够了。如果你想得到或了解其他的更多标签,你可以在RSS2.0 Specificaion(RSS2.0 at Harvard Law)里找到你所要的标签。很多感觉很抽象的东东其实你只要去靠近他,去温暖他慢慢的就会被你融化的:)
本文转自网魂小兵博客园博客,原文链接:http://www.cnblogs.com/xdotnet/archive/2007/06/07/aspnet_rss_achors.html,如需转载请自行联系原作者