Skip to content
Mart 18, 2007 / Erkan

ASP.NET C# Veriyi Önbellekte Saklamak (Data Caching)


Web sayfalarında önbellekleme işlemi sayfalarımızın performansını arttırmak için oldukça önemlidir. Eğer web sayfalarınızı ASP .Net ile programladıysanız birkaç önbellekleme çeşidi kullanabilirsiniz. Bu yazımda web sayfamızdaki bir veri kaynağını nasıl önbelleğe yazdırabileceğimizden bahsetmek istiyorum.

Aşağıdaki kod’u projemize eklemeden önce veri kaynağı olarak “OrnekXml.xml” adında bir XML dosyası ve bir adet DataGrid ekleyelim.

OrnekXml.xml Dosyası

<?xml version="1.0" encoding="utf-8" ?>
<data>
<tablo>
<oge1>xxx1</oge1>
<oge2>xxx2</oge2>
</tablo>
</data>

Örnek xml dosyamızı oluşturduktan sonra aşağıdaki kodları projemize ekleyelim.

protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
// DataSet i almak için önbeleğe gidiliyor
ds = (DataSet)Cache["OnbellekXmlVerisi"];
// DataSet önbellekte yok ise xml dosyası okunuyor.
if (ds == null)
{
ds = new DataSet();
ds.ReadXml(Server.MapPath("~/OrnekXml.xml"));
Cache.Insert("OnbellekXmlVerisi",
ds, null, DateTime.Now.AddMinutes(5), TimeSpan.Zero);
}

this.GridView1.DataSource = ds.Tables[0];
this.GridView1.DataBind();
}

Yukarıdaki kod örneği “OrnekXml.xml” dosyasını 5 dakika boyunca önbellekte tutmanızı sağlayacaktır, her 5 dakika sonunda xml dosyası güncel haliyle yeniden okunup önbellekte saklanacaktır.

5 Yorum

Yorum Yapın
  1. yoldaş / Mar 21 2007 12:50 pm

    yararlı bilgi için teşekkürler
    http://yoldas.cu.edu.tr

  2. Özgür / May 15 2008 5:03 am

    Çok teşekkürler.

  3. Ugur CELENK / Haz 3 2008 4:22 pm

    ds = (DataSet)Cache[“OnbellekXmlVerisi”];
    // DataSet önbellekte yok ise xml dosyası okunuyor.
    if (ds == null)

    üstteki kısım yerine;
    if (Cache[“OnbellekXmlVerisi”] == null)
    yazmak yeterli oluyor, güzel makale..

  4. tD / Tem 21 2008 10:28 pm

    db’deki bir tabloyu bu şekilde çekip sorguları onun üzerinden yapmak da mümkün mü?

  5. Ali / Kas 25 2011 11:28 am

    Değerli paylaşım için teşekkür ederim.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: