Ana içeriğe atla

Csharp ile RSS Nasıl yapılır

Web sayfalarının olmazsa olmazı RSS akışlarını Asp.Net sayfalarında nasıl yapılacağına bakacağız.Web Slice eklentisi IE8 de harikalar yaratırken, biz önce RSS yapalım bir sonraki blogtada Web Slice için bir web sayfası yapabiliriz.RSS uzun uzun anlatmaya sanırım gerek yoktur peki öyleyse yazının devamında kodlar sizi bekliyor...

RSS.Aspx sayfanızın source file kısmına aşağıda yazdığım kodları aynen kopyalabilirsiniz.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text; 
using System.Xml; 
using System.Data.OleDb; 

public partial class App_Streams_BlogRSS : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Clear();
        Response.ContentType = "text/xml";
        XmlTextWriter objX = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
        objX.WriteStartDocument();
        objX.WriteStartElement("rss");
        objX.WriteAttributeString("version", "2.0");
        objX.WriteStartElement("channel");
        objX.WriteElementString("title", "serkansenyuz.com - rss");
        objX.WriteElementString("link", "http://www.serkansenyuz.com/rss.aspx");
        objX.WriteElementString("description", "Serkan Senyuz - Rss");
        OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + HttpContext.Current.Server.MapPath("../App_Data/App_Blog.accdb"));
        string sorgu = "select top 10 BlogId,BlogName,BlogNote,BlogDate from App_Blog order by BlogId desc"; // sorgu ile en son eklenen 10 haberi seçiyoruz ve rss`imizi oluşturuyoruz
        OleDbCommand komut = new OleDbCommand(sorgu, baglanti);
        baglanti.Open();
        OleDbDataReader oku = komut.ExecuteReader();
        while (oku.Read())
        {
            objX.WriteStartElement("item");
            objX.WriteElementString("title", oku.GetString(1));
            objX.WriteElementString("description", oku.GetString(2));
            objX.WriteElementString("link", "http://www.serkansenyuz.com/Application/Blog/rss.aspx?nid=" + oku.GetInt32(0).ToString());
            objX.WriteEndElement();
        }

        oku.Close();
        baglanti.Close();

        objX.WriteEndElement();
        objX.WriteEndElement();
        objX.WriteEndDocument();
        objX.Flush();
        objX.Close();
        Response.End();



    }
}



      Bu Yazının Sponsorları













Yorumlar

Yorum Gönder

Bu blogdaki popüler yayınlar

HBYS yazılımları ve en iyiler (Hastane Bilgi Yönetim Sistemleri)

HBYS (Hastane Bilgi Yönetim Sistemi) ve iyi yazılım firmaları HBYS nedir sorusuna verilebilecek en iyi cevabı, sıra bekleyen hastalara, HBYS programını kullanlar, yani sistem çalışmıyor diyenler verebilir ! Bugün Türkiye genelinde halen izlediğim bu HBYS platformlarını üreten firmalar hakkında bildiğim bazı kişisel görüşlerimi paylaşacağım. Müdahil olduğum bu sektörün ileri gelen firmalarınıda bu sayede kısaca anlatma fırsatım olacak.O halde yazının devamı için devam ediniz...

Firebird SQL Table oluşturma ve SQL komutları

2 nci  Firebird SQL veritabanı blogunda bu kez mevcut Firebird veritabanına ISQL ile bağlanmayı veritabanı nesnelerini oluşturmayı (create table), Kayıt eklemeyi (ınsert) ve kayıtları izlemeyi (show) ile önemli SQL komutlarını anlatmaya çalışacağım...

Sistem Destek Uzmanı

Bir soru iliştir ! Yukarıdaki linkleri bu blogta bulamadığın bir konu ile ilgili soru sormak, danışmak, tartışmak yada bir blog hakkında özel bir mesaj atmak için kullabilirsin.Fakat her iki durumdada soru sormak ve özel bir mesaj atmak için bu linkler dışında, daha basit bir yöntemle, hemen yeni bir " yorum bırakarak " iletişime geçebilirsin. Email adresinizi iletinizde belirtirseniz yorumunuza cevabı Email yolu ile almanız olasıdır.Fakat bir mail bilgisi yoksa yorumunuza geri dönüş cevabınıda ancak en yeni yorumu okuyarak almış olursunuz.Yazdığınız iletinin aşağıda görünmesini istemediğiniz durumlarda belirtmediğiniz sürece zaten yayınlanmazlar .Genelde Email bilgisi olanlar bu blog altında görüntülenmezler. Ek olarak yanıt süresi oldukça kısa olsada bazı durumlarda gerekli ve ilgi çeken konulara yanıt verildiğini söylemeliyim.