Klasik PostBack mi, yoksa AsyncPostBack mi?

Ajax hayatımıza girdiğinden beri işler oldukça değişti. Önceden en ufak bir istekte dahil bütün sayfanız ve sisteminiz serverdan istekte bulunmuş gibi yeniden oluşturulur, bu da servera yük getirir, kullanıcıyı ise daha fazla bekletme zorunda bırakırdı.

Asp.Net’de bu yenilenme olayına “Postback” denir. Yani siz her butona tıkladığınızda sayfanızın “load” olayı tekrarlanır.

Sayfanın postback olup olmadığını da if(isPostBack) fonksiyonunun döndürdüğü “bool” tipindeki sonuca göre anlıyoruz.

Bazı durumlarda sayfanızın yenilenme sebebinin Ajax ile mi yoksa klasik yöntemle mi olduğu önemli olabilir. İşte bu gibi durumlarda ScriptManager sınıfının, GetCurrent methodunun, IsInAsyncPostBack methodu işinizi görecektir.

Artık kullanımına değinebiliriz.
1.
Sayfanıza birer adet ScriptManager ve UpdatePanel kontrolleri ekleyiniz.
UpdatePanel kontrolünün içerisine bir adet Buton ekleyiniz.
Bir butonda UpdatePanel kontrolünün dışına bırakınız.

Buradaki butonların biri UpdatePanel içerisinde olduğu için “AsyncPostBack”olacak. Diğeri de UpdatePanel dışında olduğu için tıklandığında “PostBack” olacak.
Kullanımı aşağıdaki gibidir.

protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
if (ScriptManager.GetCurrent(this.Page).IsInAsyncPostBack)
{
Title = “Partial Update gerçekleşti…”;
}

else
{
Title=”Klasik Update Gerçekleşti…”;
}
}
}

Diğer yazılarımda görüşmek üzere…