asp.net 生成RSS页面

来源:互联网 发布:南通金蝶软件 编辑:程序博客网 时间:2024/04/27 23:54
本文主要提供代码,创建自己的RSS,供别人订阅...

--- RSS.aspx
<%@ Page language="c#" Codebehind="RSS.aspx.cs" AutoEventWireup="false" Inherits="Socent.RSS" %>
--- RSS.aspx.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace Socent
{
 /// <summary>
 /// 取得聚合文章
 /// </summary>
 public class RSS : System.Web.UI.Page
 {
 Components.GenRSS gr = new Components.GenRSS(); // 实例化对象

 string strRSS = "";

 private void Page_Load(object sender, System.EventArgs e)
 {
 Response.ContentType = "application/xml"; // 输出并按xml数据显示
 Response.Write (GetRSS());
 }

 /// <summary>
 /// 取得聚合文章
 /// </summary>
 public string GetRSS()
 {
 DataSet ds = gr.GenerateRSS(); // 调用GenerateRSS()方法,获得数据

 strRSS = strRSS + "<rss version=/"2.0/">";
 strRSS = strRSS + "<channel>";
 strRSS = strRSS + "<title>土人制造</title>";
 strRSS = strRSS + "<link>http://www.socent.com</link>";
 strRSS = strRSS + "<description>土人制造</description>";
 for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
 {
 strRSS = strRSS + "<item>";
 strRSS = strRSS + "<title><![CDATA["+ds.Tables[0].Rows[i]["Title"]+"]]></title>";
 strRSS = strRSS + "<link>http://www.socent.com/ArticleShow@"+ds.Tables[0].Rows[i]["ID"]+".html</link> ";
 strRSS = strRSS + "<description><![CDATA["+ds.Tables[0].Rows[i]["Description"]+"]]></description>";
 strRSS = strRSS + "<copyright>土人制造</copyright>";
 strRSS = strRSS + "<pubDate>"+Convert.ToDateTime(ds.Tables[0].Rows[i]["AddDate"].ToString()).ToString("yyyy-MM-dd HH:mm")+"</pubDate>";
 strRSS = strRSS + "<comments>http://www.socent.com/CommentShow@"+ds.Tables[0].Rows[i]["ID"]+".html</comments>";
 strRSS = strRSS + "</item>";
 }
 strRSS = strRSS + "</channel>";
 strRSS = strRSS + "</rss>";
 
 return strRSS;
 }

 #region Web 窗体设计器生成的代码
 override protected void OnInit(EventArgs e)
 {
 //
 // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
 //
 InitializeComponent();
 base.OnInit(e);
 }
 
 /// <summary>
 /// 设计器支持所需的方法 - 不要使用代码编辑器修改
 /// 此方法的内容。
 /// </summary>
 private void InitializeComponent()
 {
 this.Load += new System.EventHandler(this.Page_Load);
 }
 #endregion
 }
}