RSS是共享内容的一种简易方式,也称聚合.通常被用于新闻和Blog。网站提供RSS输出,有利于让用户发现网站内容的更新。网站用户可以借助于支持RSS的新闻聚合工具软件或者在线网站(如BLOGLINES),订阅网站的内容并在不打开网站页面的情况下阅读内容。
闲话少说,步入正题!
创建新项目,新建Rss.aspx页,因为XML文件内容的输出是采用直接输出字符串的形式,只留下面这一行即可
1
<%
@ Page Language
=
"
C#
"
AutoEventWireup
=
"
true
"
CodeBehind
=
"
Rss.aspx.cs
"
Inherits
=
"
MyVs2008.Rss
"
%>
2 后台代码;Rss.aspx.cs
3 protected void Page_Load( object sender, EventArgs e)
4 {
5 Response.ContentType = " text/xml " ;
6 Response.Charset = " UTF-8 " ;
7 Response.Write( " <?xml version=\"1.0\" encoding=\"UTF-8\" ?> " );
8 Response.Write( " <rss version=\"2.0\"><channel> " );
9 Response.Write(GetUserRSS(GetMovie()));
10 Response.Write( " </channel></rss> " );
11 }
12
13 /// <summary>
14 /// 输出RSS格式的数据
15 /// </summary>
16 /// <param name="milist"></param>
17 /// <returns></returns>
18 private string GetUserRSS(System.Collections.Generic.List < MovieInfo > milist)
19 {
20 System.Text.StringBuilder strRss = new System.Text.StringBuilder();
21 strRss.Append( " <title>网视电影</title> " );
22 strRss.Append( " <link>http://hi.baidu.com/zck98530</link> " );
23 strRss.Append( " <description>网视电影平台</description> " );
24 strRss.Append( " <language>zh-cn</language> " );
25 strRss.Append( " <generator>http://hi.baidu.com/zck98530 </generator> " );
26 foreach (MovieInfo mi in milist)
27 {
28 strRss.Append( " <item> " );
29 strRss.Append( " <title> " + mi.MovieTitle + " </title> " );
30 strRss.Append( " <author> " + mi.MoviePlayer + " </author> " );
31 strRss.Append( " <description> " + mi.MovieRemark + " </description> " );
32 strRss.Append( " <pubDate> " + mi.MovieDate + " </pubDate> " );
33 strRss.Append( " <link>http://localhost/a.aspx?ID= " + mi.MovieID + " </link> " );
34 strRss.Append( " </item> " );
35 }
36
37 return strRss.ToString();
38 }
39 /// <summary>
40 /// 存储影片信息的类
41 /// </summary>
42 public class MovieInfo
43 {
44 public string MovieTitle { get ; set ; }
45 public string MoviePlayer { get ; set ; }
46 public string MovieRemark { get ; set ; }
47 public string MovieDate { get ; set ; }
48 public string MovieID { get ; set ; }
49 }
50 /// <summary>
51 /// 获取所有影片信息
52 /// </summary>
53 /// <returns></returns>
54 public System.Collections.Generic.List < MovieInfo > GetMovie()
55 {
56 System.Collections.Generic.List < MovieInfo > movie = new System.Collections.Generic.List < MovieInfo > ();
57 System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection( " Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + Server.MapPath( " App_Data\\superVOD.mdb " ) + " ; " );
58 System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand();
59 cmd.Connection = conn;
60 cmd.CommandText = " select top 10 [T2],[T7],[S1],[D5],[autoID] from [video] order by [D5] Desc " ;
61 conn.Open();
62 System.Data.OleDb.OleDbDataReader dr = cmd.ExecuteReader();
63 while (dr.Read())
64 {
65 MovieInfo info = new MovieInfo();
66 info.MovieTitle = dr[ " T2 " ].ToString();
67 info.MoviePlayer = dr[ " T7 " ].ToString();
68 info.MovieID = dr[ " autoID " ].ToString();
69 info.MovieRemark = dr[ " S1 " ].ToString();
70 info.MovieDate = dr[ " D5 " ].ToString();
71 movie.Add(info);
72 }
73 dr.Close();
74 conn.Close();
75 return movie;
76 }
2 后台代码;Rss.aspx.cs
3 protected void Page_Load( object sender, EventArgs e)
4 {
5 Response.ContentType = " text/xml " ;
6 Response.Charset = " UTF-8 " ;
7 Response.Write( " <?xml version=\"1.0\" encoding=\"UTF-8\" ?> " );
8 Response.Write( " <rss version=\"2.0\"><channel> " );
9 Response.Write(GetUserRSS(GetMovie()));
10 Response.Write( " </channel></rss> " );
11 }
12
13 /// <summary>
14 /// 输出RSS格式的数据
15 /// </summary>
16 /// <param name="milist"></param>
17 /// <returns></returns>
18 private string GetUserRSS(System.Collections.Generic.List < MovieInfo > milist)
19 {
20 System.Text.StringBuilder strRss = new System.Text.StringBuilder();
21 strRss.Append( " <title>网视电影</title> " );
22 strRss.Append( " <link>http://hi.baidu.com/zck98530</link> " );
23 strRss.Append( " <description>网视电影平台</description> " );
24 strRss.Append( " <language>zh-cn</language> " );
25 strRss.Append( " <generator>http://hi.baidu.com/zck98530 </generator> " );
26 foreach (MovieInfo mi in milist)
27 {
28 strRss.Append( " <item> " );
29 strRss.Append( " <title> " + mi.MovieTitle + " </title> " );
30 strRss.Append( " <author> " + mi.MoviePlayer + " </author> " );
31 strRss.Append( " <description> " + mi.MovieRemark + " </description> " );
32 strRss.Append( " <pubDate> " + mi.MovieDate + " </pubDate> " );
33 strRss.Append( " <link>http://localhost/a.aspx?ID= " + mi.MovieID + " </link> " );
34 strRss.Append( " </item> " );
35 }
36
37 return strRss.ToString();
38 }
39 /// <summary>
40 /// 存储影片信息的类
41 /// </summary>
42 public class MovieInfo
43 {
44 public string MovieTitle { get ; set ; }
45 public string MoviePlayer { get ; set ; }
46 public string MovieRemark { get ; set ; }
47 public string MovieDate { get ; set ; }
48 public string MovieID { get ; set ; }
49 }
50 /// <summary>
51 /// 获取所有影片信息
52 /// </summary>
53 /// <returns></returns>
54 public System.Collections.Generic.List < MovieInfo > GetMovie()
55 {
56 System.Collections.Generic.List < MovieInfo > movie = new System.Collections.Generic.List < MovieInfo > ();
57 System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection( " Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + Server.MapPath( " App_Data\\superVOD.mdb " ) + " ; " );
58 System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand();
59 cmd.Connection = conn;
60 cmd.CommandText = " select top 10 [T2],[T7],[S1],[D5],[autoID] from [video] order by [D5] Desc " ;
61 conn.Open();
62 System.Data.OleDb.OleDbDataReader dr = cmd.ExecuteReader();
63 while (dr.Read())
64 {
65 MovieInfo info = new MovieInfo();
66 info.MovieTitle = dr[ " T2 " ].ToString();
67 info.MoviePlayer = dr[ " T7 " ].ToString();
68 info.MovieID = dr[ " autoID " ].ToString();
69 info.MovieRemark = dr[ " S1 " ].ToString();
70 info.MovieDate = dr[ " D5 " ].ToString();
71 movie.Add(info);
72 }
73 dr.Close();
74 conn.Close();
75 return movie;
76 }
1
<
link id
=
"
RSSLink
"
title
=
"
RSS
"
type
=
"
application/rss+xml
"
rel
=
"
alternate
"
href
=
"
http://yourdomain/Rss.aspx
"
/>