rss现在很流行,它推行的一套xml格式的标准来传输数据,和webservice差不多,不过它必须遵从一套它自己的标准。
创建rss有很多种方式,最终的目的是形成一个xml文档的输出流,这个文档要符合一定的标准格式。找到一种比较简单的形成rss的方法,使用repeater来绑定重复的xml节点。
新建一个webform Rss.aspx,在html视图中删除除了第一行页面声明以外的其它代码,写上以下xml格式的代码
1
<%@ Page language="c#" Codebehind="Rss.aspx.cs" AutoEventWireup="false" Inherits="RSSReader.Rss" %>
2
<?xml version="1.0" ?>
3
<rss version="2.0">
4
<channel>
5
<title>测试rss</title>
6
<link>http://zqs.cnblogs.com/</link>
7
<description>测试rss</description>
8
<language>zh-cn</language>
9
<asp:Repeater id="Repeater1" runat="server">
10
<ItemTemplate>
11
<item>
12
<title><%#DataBinder.Eval(Container.DataItem,"sch_name")%></title>
13
<description><![CDATA[<%#DataBinder.Eval(Container.DataItem,"sch_name")%>]]></description>
14
<pubDate><%#((DateTime)DataBinder.Eval(Container.DataItem,"indate")).ToString("r") %></pubDate>
15
<link>http://zqs.cnblogs.com/show.aspx?id=<%# DataBinder.Eval(Container.DataItem, "sch_no") %></link>
16
</item>
17
</ItemTemplate>
18
</asp:Repeater>
19
</channel>
20
</rss>
21
<%@ Page language="c#" Codebehind="Rss.aspx.cs" AutoEventWireup="false" Inherits="RSSReader.Rss" %>2
<?xml version="1.0" ?> 3
<rss version="2.0">4
<channel>5
<title>测试rss</title> 6
<link>http://zqs.cnblogs.com/</link>7
<description>测试rss</description>8
<language>zh-cn</language>9
<asp:Repeater id="Repeater1" runat="server">10
<ItemTemplate>11
<item>12
<title><%#DataBinder.Eval(Container.DataItem,"sch_name")%></title>13
<description><![CDATA[<%#DataBinder.Eval(Container.DataItem,"sch_name")%>]]></description>14
<pubDate><%#((DateTime)DataBinder.Eval(Container.DataItem,"indate")).ToString("r") %></pubDate>15
<link>http://zqs.cnblogs.com/show.aspx?id=<%# DataBinder.Eval(Container.DataItem, "sch_no") %></link>16
</item>17
</ItemTemplate>18
</asp:Repeater>19
</channel>20
</rss>21

代码说明:
建立一个xml格式的文档,然后用Repeater来重复显示数据行节点
该页面的后置代码文件Rss.cs中的代码如下,在该页面的Page_Load事件中写上如下代码:
1
SqlConnection conn = new SqlConnection("server=.;database=test;uid=sa;pwd=;");
2
3
System.Data.SqlClient.SqlDataAdapter myComm = new SqlDataAdapter("select * from dSchool",conn);
4
5
DataSet ds = new DataSet();
6
7
myComm.Fill(ds,"Table1");
8
9
Response.ContentType="Text/XML";
10
Repeater1.DataSource = ds;
11
12
Repeater1.DataBind();
2
3
4
5
6
7
8
9
10
11
12
代码说明:
使用Response.ContentType="Text/XML";将页面的输出流设置为xml格式,其它就是得到数据集绑定Repeater了


浙公网安备 33010602011771号