[轉]使用C#生成RSS

<%@ 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
 }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章