Serkan Ayyıldız

Meraklı bir yazılım uzmanı...

Asp.Net PostBack Kavramı ve Kullanımı

Web yazılımcılara selamlar olsun :)

Yeni bir makalede tekrar birlikteyiz bugünkü makalemizin konusu Asp.Net PostBack ile Asp.Net derslerimize devam ediyoruz.

PostBack Nedir?

PostBack bir web sayfasında iken sayfamızı refresh yaptırıp istemci bilgisayar ile web sunucusun arasında data gönderip almaktır,ancak buradaki yenilenen sayfa data gönderilip ve datayı geri çeken aynı sayfa olmaktadır.

Neden PostBack Kullanılır?

Web sayfalarında herhangi bir tanımlı nesneye tıklandığında bazı verileri sunucuya gönderip verinin karşılığını tekrar web tarayıcısına geri gönderirken tekrar tekrar aynı işlemleri gerçekleştirebilir.Bunun sonucunda hem sunucu gereksiz trafik harcar hem de site ziyaretçisi internet kotasını doldurmaya başlar.Aynı zamanda kullanıcının sayfadaki verileri postback
anında kaybolur.

Kısaca şöyle bir örnek verebiliriz; şehirlerin listesini veritabanından çekip bir dropdownlist nesnesine doldurup listeliyoruz ve kullanıcı herhangi bir şehri seçtikten sonra butona tıklar sayfa postback olur.Eğer postback önlemi almazsak sayfa yenilendikten sonra kullanıcının seçtiği şehir tekrar seçili olarak gelmez,ayrıca şehir listesini tekrar veritabanından gereksiz yere çektiğimiz için gereksiz yere veri trafiği harcamış oluruz.

Asp.Net'te PostBack Kullanımı:
Bildiğiniz gibi windows form uygulamalarında Form_Load eventi vardır ve bu event programı ilk çalıştırdığınızda içerisine yazılan kodları çalıştırır,Asp.Net'te de Page_Load eventi vardır ve sayfa ilk kez açıldığında çalışır ancak Asp.Net'in farkı sayfada hangi tanımlı kontrole tıklarsanız tıklayın aynı sayfada kalsanız bile Page_Load eventi yeniden tetiklenir ve sayfa baştan yüklenmeye başlar.

Bir Asp.Net web sayfasının postback durumunda olup olmadığını IsPostBack ile anlayabiliriz ve bu kod bize true ya da false döndürür ve tahmin edebileceğiniz gibi eğer true dönüş sağlanıyorsa sayfa postback halinde çalışıyordur.

Örnek bir uygulama yapalım ve Visual Studio ile C#.Net dilinde boş bir web projesi oluşturalım:

visual studio

Şimdi boş bir web sayfası oluşturalım:

asp.net proje

web form

Bir buton ekleyelim:

aspnet buton

Design tarafına geçelim ve butona çift tıklayarak click eventini oluşturalım:

click event

Butonun click eventine herhangi bir kod yazmamıza gerek yok,bizi ilgilendiren sayfanın Page_Load eventi ve şimdi sayfanın Page_Load eventine postback denetimi yazalım ve duruma göre sayfanın postback olup olmadığını görelim:

page load

Şimdi projemizi çalıştıralım ve butona tıklayalım:

asp.net postback

Gördüğünüz gibi sayfa ilk kez açıldığı için Page_Load eventinde postback durumuna düşmedik,şimdi ise butona tıklıyoruz:

postback

Artık sayfamız postback oldu!

Postback kavramı Asp.Net ile web yazılım projelerinizde sık kullanacağınız bir yapıdır,öyle ki bir buton neden çalışmadı sorusunun ayrıca bir sebebi de sayfaya postback denetimi konulmadığı için olabilir.Halbuki buton çalışıyor ancak sayfa postback esnasında kendini temizlediği için butonun kodları çalışmamış gibi kendini gösterebiliyor.

Bir sonraki makalemizde görüşmek dileğiyle,hoşçakalın!

1 Yorum:

  1. developer
    1/27/2014

    temma berbat olmuş kardeşim

Bir yorum bırak E-posta adresiniz yayınlanmayacaktır.

Menu