產生 RSS feed
- 2008-04-22
- 16557
- 0
RSS是現在很風行的一種服務,建構在XML之中,如果我們自己的網站想要產生RSS就可以利用此篇範例來動態產生以便使用者可以很方便的訂閱我們。
▲首先您必須要在頁面上using以下三個命名空間
using System.Data.SqlClient; using System.Xml; using System.Text;
▲再來就是code部份了請改掉應該要改的=.=
protected void Page_Load(object sender, EventArgs e) { Response.Clear(); Response.ContentType = "text/xml";//設定http mime XmlTextWriter xmlTw = new XmlTextWriter(Response.OutputStream, Encoding.UTF8); //產生RSS檔頭開始 xmlTw.WriteStartDocument(); xmlTw.WriteStartElement("rss"); xmlTw.WriteAttributeString("version", "2.0"); xmlTw.WriteStartElement("channel"); xmlTw.WriteElementString("title", "demo小鋪 最新文章"); xmlTw.WriteElementString("link", "http://demo.tc"); xmlTw.WriteElementString("description", "創作、分享、交流的園地"); xmlTw.WriteElementString("ttl", "60"); //產生RSS檔頭結束 SqlConnection conn = demotools.getSqlConnection();//getSqlConnection()為demo抓取連結字串的方法 SqlCommand comm = new SqlCommand("sql語句", conn); conn.Open(); SqlDataReader reader = comm.ExecuteReader(CommandBehavior.CloseConnection); while (reader.Read()) { xmlTw.WriteStartElement("item"); xmlTw.WriteElementString("title", reader.GetString(2)); xmlTw.WriteElementString("description", reader.GetString(3)); xmlTw.WriteElementString("link", "http://demo.tc/view.aspx?id=" + reader.GetInt32(0)); xmlTw.WriteElementString("ModifyUserID", reader.GetByte(4).ToString()); xmlTw.WriteElementString("pubDate", reader.GetDateTime(1).ToString("r")); xmlTw.WriteEndElement(); } reader.Dispose(); conn.Dispose(); xmlTw.WriteEndElement(); xmlTw.WriteEndElement(); xmlTw.WriteEndDocument(); xmlTw.Flush(); xmlTw.Close(); Response.End(); comm.Dispose(); }
★注意事項:拿來放以上code的頁面把他砍得只剩下第一條就好,如下
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="RSS_Default" %>
♥小提醒:在你的網站每一頁加上可以告知遊覽器此網站擁有RSS(href的網址請改為您的rss位子)
<link href="http://demo.tc/rss" rel="alternate" type="application/rss+xml" />
http://www.rssboard.org/rss-specification
回應討論