Web Formlarının Sunucuya Gönderilmesi (PostBack)
Geliştirdiğimiz uygulamanın bir olay sonucunda (Bir butona tıklama v.b.), sunucuya gönderilmesine ve sayfanın tekrar kendisine yönlendirilmesine postback denir.
Bu işlem için basit bir uygulama geliştirelim;
Aşağıdaki formu oluşturmak için, file>new web site>empty web site seçenekleriyle yeni bir web sitesi oluşturalım. Sonra yeni bir web formu ekleyelim.
E-posta ve mesaj yazmak için iki textbox, formu göndermek için bir buton ve girilen bilgileri göstermek için iki label ekleyelim.
Buton1 Click() olayına sunucudan gelen e-posta ve mesaj bilgileri görmek için aşağıdaki kodu yazalım;
1 2 3 4 5 6 7 |
protected void Button1_Click(object sender, EventArgs e) { Label1.Text = TextBox1.Text; Label2.Text = TextBox2.Text; } |
Buton1 Click() olayında bilgiler sunucuya gönderilip labellara bilgiler geri gönderilir.
Bu işlem her Buton1 Click() olayında tekrarlanır, eğer bu bir mesaj gönderme işlemiyse her Buton1 Click() olayında mesajın tekrar gönderilir, bu da istenmeyen bir durumdur.
IsPostBack Özelliği
IsPostBack sayfa ilk yüklendiğinde FALSE, diğer yüklemelerde TRUE değeri verir.
Sayfa ilk yüklendiğinde buton1’in aktif, diğer yüklemelerde pasif olasını istiyorsak IsPostBack özelliğini kullanabiliriz.
Buton1 Click() olayına aşağıdaki kodu aşağıdaki şekilde değiştirelim;
1 2 3 4 5 6 7 8 9 10 11 |
protected void Button1_Click(object sender, EventArgs e) { Label1.Text = TextBox1.Text; Label2.Text = TextBox2.Text; if (IsPostBack)//İlk yükleme değilse { Button1.Enabled = false;//buton1 pasif olsun } } |
Artık formumuz gönderilip sayfamızda sonuçlar gösterildikten sonra GÖNDER butonu pasif olacaktır.
IsPostBack özelliği sayfa ilk yüklendiğinde bazı bilgileri sunucudan almak v.b. bir çok durumda kullanılabilir. Doğru şekilde kullanıldığında sunucudan talep sayısını azaltıp, sunucunun daha hızlı yanıt vermesini sağlar.
merhaba hocam, basit bir iletişim formunu aktif edebilmek için arka planda yazmamız gereken kodlar nelerdir?