Tarayıcınız JavaScript! desteklememektedir.

ViewState Nedir? PostBack Nedir?

Asp.Net Ile ViewState Kullanimi 

ViewState Nedir? Ne Is Yapar? PostBack Nedir? Sayfa Neden PostBack Olur? 
Evet arkadaslar bu makalemde yukarida da belirttigim gibi ViewState ve PostBack 
kavramlariyla ilgili merak edilen sorulara cevap verecegim. 
Asp.net ile yapmis oldugunuz web sitesinde, sayfada islemler yaptiginizda sayfa sürekli
 kendini yeniler. Bunun nedeni siz butona bastiginizda sayfa sunucuya gidip tekrar
 bilgileri getirir. Bu isleme sayfanin PostBack olmasi denir. Tabi sayfa PostBack 
oldugunda sunucuya gittigi için sayfada girilmis bir bilgi varsa bunun silinmesi gibi 
bir durum olusur.  Eger biz PostBack olsun istemiyorsak bunun içinde asagidaki kodu 
sayfamiza eklememiz gerekir. 

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
// Burda PostBack olmasini istemedigimiz islemleri ekliyoruz.
        }
    }


Eger sayfa PostBack olsun ama verilerim silinmesin derseniz bunun için yardima ViewState kosuyor. Sayfada ki verileri sayfa yenilenme durumunda bile ViewState içinde tutar ve eklemek istedigimiz bilgiler PostBack olma durumunda bile silinmemis olur. ViewState de tutulan veriler bulundugu sayfa üzerinde tutuldugu için ViewState in ömrü sayfanin ömrü kadardir. ViewState in tek sikintisi çok veri tutursa yapmis oldugumuz site de yavaslama meydan gelir. Eger ViewState i kapatmak istersek asagidaki kodu kullanabilirsiniz.


EnableViewState = "False";


Bu özellik istedigimiz bir nesnenin ViewState özelligini durdurmak için kullanilir. Mesela textbox in bu özelligini kapatmak istersek kullaniriz. Kullanimi da bu sekildedir;


<asp:TextBox ID="TextBox1" runat="server" EnableViewState="false"></asp:TextBox>


Bu islem sadece belirli nesneler üzerinde ise yarar eger biz sayfanin ViewState özelligini kapatmak istersek asagidaki kodu kullaniriz. Asp.net sayfamizin en üstünde bulunan kodun sonuna ekleriz.

ViewState de bilgi nasil tutulur?
ViewState degiskeni olusturup köseli parantezler içinde olusturdugumuz degiskenin adini yazariz.
Kullanimi:
ViewState ["ad"] = TextBox1.Text; // bu kod textbox1 den gelen degeri ViewState in içine atar. 

ViewState' in avantajlari nelerdir?


1-) Basit ve kolay kullanim sekli vardir.
2-) Sunucuyu kullanmadigi için sunucuyu sisirmez.


ViewState' in dezavantajlari nelerdir?


1-) Veriler sunucuda tutulmadigi için kullanicinin bilgisayarindan bu verilere disaridan kolayca ulasabilir.
2-) Çok kullanildigi takdirde içerigi dolar ve performans olarak yavaslar. 

Bugünlük bu kadar bir sonraki makalemde görüsmek üzere.