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.
4 comments so far
Leave a reply
yararlı bilgi için teşekkürler
http://yoldas.cu.edu.tr
Çok teşekkürler.
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..
db’deki bir tabloyu bu şekilde çekip sorguları onun üzerinden yapmak da mümkün mü?