RSS Sayfası Oluşturma
Basit bir RSS Feed aşağıdaki gibi oluşturulabilir. Aşağıda boş bir şekilde oluşturulan Rss.ashx dosyasının nasıl kodlar içermesi gerektiğini örnek olması açısından paylaşıyorum.
<%@ WebHandler Language="C#" Class="Rss" %>
using System;
using System.Web;
using System.Xml;
using System.Collections;
public class Rss : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/xml";
context.Response.ContentEncoding = System.Text.Encoding.GetEncoding( "iso-8859-9" );
context.Response.Write( "" );
getXml( context );
}
public bool IsReusable {
get {
return false;
}
}
void getXml(HttpContext context)
{
XmlTextWriter x = new XmlTextWriter( context.Response.Output );
x.WriteStartElement( "rss" );
x.WriteAttributeString( "version", "2.0" );
x.WriteAttributeString( "xmlns:dc", "http://purl.org/dc/elements/1.1/" );
x.WriteStartElement( "channel" );
x.WriteStartElement( "title" );
x.WriteString( "Web sitenizin ismi" );
x.WriteEndElement(); // end title
x.WriteStartElement( "link" );
x.WriteString( "Web sitenizin linki" );
x.WriteEndElement(); // end link
x.WriteStartElement( "description" );
x.WriteString( "Web sitenizle ilgili açıklama" );
x.WriteEndElement(); // end description
// Aşağıdaki foreach comment edilmiş durumda çünkü burayı sizin kendi kodunuza uygun olarak yazmanız gerekmekte.
//foreach ( DictionaryEntry m_PostEntry in m_Posts )
//{
x.WriteStartElement( "item" );
x.WriteStartElement( "title" );
x.WriteString( "Yazının başlığı" );
x.WriteEndElement(); // end title
x.WriteStartElement( "link" );
x.WriteString( "Yazının tam adresi" ); // ör: http://sunali.com/2005/02/14/resource-dosyasyndan-resim-gosterme/
x.WriteEndElement(); // end link
x.WriteStartElement( "description" );
x.WriteString( "Yazı içeriği" );
x.WriteEndElement(); // end description
x.WriteStartElement( "dc:creator" );
x.WriteString( "Yazar ismi" );
x.WriteEndElement(); // end dc:creator
x.WriteStartElement( "pubDate" );
x.WriteString( "Yazı tarihi" );
x.WriteEndElement(); // end pubDate
x.WriteEndElement(); // end item
//}
x.WriteEndElement(); // end channel
x.WriteEndElement(); // end rss
}
}
Demo ekleseydiniz keşke, en azından nasıl göründüğüne bakabilirdik, anlatım için teşekkürler..
Sağolasın deniyorum hemen..