Cuma, 23 Mart 2012 08:23

Asp.Net Response ve Request Nesneleri

Yazan
Öğeyi Oyla
(5 oy)

ASP.NET’ te Response ve Request Nesneleri

İnternet sayfalarımızı görüntüleyebilmek için kullanıcının (client) sunucudan (server) istekte bulunması gerekir. Tarayıcıya yazdığımız web adresi bir istektir. Sunucu bu isteğe karşılık verir. Sunucu ve kullanıcı arasındaki bu iletişim HTTP Protokolü (Hyper Text Transfer Protocol) ile sağlanır. Sunucuya gönderilen istekler, HTTP Protokolü sayesinde tarayıcıya iletilir. Bu sayede çağrılan web sayfası görüntülenir.

Response Nesnesi

Sunucunun kullanıcıya cevap vermesini sağlayan nesnedir. Nesneye ilişkin metotlar kullanılarak gerekli cevaplar üretilir. Bu metodlar;

Response.Write Metodu

Sunucu tarafından sayfaya bir şeyler yazdırılacaksa Response.Write metodu kullanılır. Yazdırılan ifade bir mesaj ya da değişken olabilir. Eğer tırnak içerisine yazılıyorsa ifade değişmeden sayfaya yazdırılır. 

protected void Page_Load(object sender, EventArgs e)
{
//Response.Write("Merhaba <br>");
//int mesaj;
// mesaj = 22;
// Response.Write(mesaj + "<br>Günaydın");
for (int k =1; k < 7; k++)
{
Response.Write("<font size= " + k + "> AFYON KOCATEPE ÜNİVERSİTESİ <br></font>");
}
}

Response.Redirect Metodu

Web sayfamızdan herhangi bir sayfadan başka bir sayfaya yönlendirmek için kullanılır.

 

protected void Page_Load(object sender, EventArgs e)
{

//Response.Redirect("Default2.aspx");// bu komutla Default2.aspx sayfasına gidilir.
Response.Redirect("http://www.aku.edu.tr");// bu komutla web adresine gidilir.
}

Response.Buffer Metodu

Web Browser’a gönderdiğimiz çıktıları kontrol amaçlı kullanılmaktadır.

Browser’a çıktılar 2 şekilde gönderilmektedir.

1. Sayfanın bütün script ve kodları çalıştıralana kadar Buffer(Tampon) bir hafızada saklanır ve hepsi tamamlandığında browser’a gönderilir. Asp.Net’in çalışma biçimi budur. Sayfada hiçbir şey belirtilmemişse Response.Buffer=true kabul edilir.

2. Tamponlama yapılmadan doğrudan browser’a gönderme biçimidir. Bu durumda Response.Buffer=false ifadesi bildirilir.

Response nesnesinin tampon hafızayı yöneten 3 adet metodu daha vardır.

1. Flush metodu; o zamana kadar tampon hafızada biriken her şeyi hemen browser’a gönderir.

2. Clear metodu; tampon hafızada biriken her şeyi siler ve tampon hafıza boş kalır. Bu bildirimden önce hiçbir şey (daha önce flush metodu ile gönderilmemişse) istemciye gönderilmez. Sitemizde alışveriş yapan bir kullanıcı, vazgeçtiği zaman verdiği bütün bilgileri silmek en iyisidir. O zamanda bu özellik yardımımıza koşacaktır.

3. End metodu; response nesnesinin Buffer’a veri aktarım sürecini sonlandırır. O zamana kadar tamponda birikmiş olanlar istemciye gönderilir.

protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Şu an görülen yazı, Flush metodu ile Browser'a hemen gönderilecek.<br>");
Response.Flush();
Response.Write("Bu yazı hiçbir zaman Browser'da gözükmeyecek, çünkü devam eden response.clear satırı ile tampon hafızadan silinecek.<br> ");
Response.Clear();
Response.Write("Bu yazı tampon hafıza temizlendikten sonra, tampon hafızada tutulmuş oradan da browser'a gönderilmiştir.<br>");
Response.End();
Response.Write("Bu yazı da hiçbir zaman gözükmeyecek, çünkü response nesnesi, end metodu ile browser'a her türlü gönderimi durdurmuştur.<br>");
}}

Okunma 5431 defa