Browserdan sunucuya veri iletmek için QueryString kullanılır.Tabi teorik olarak açıklamak hiç bir ifade etmediğinden günlük internet hayatından örnek verelim.www.hepsiburada.com sitesine girip, her hangi bir kategoriye girerseniz eğer adres çubuğuna dikkat ediniz.“http://www.hepsiburada.com/bilmemne.aspx?CategoryID=1&cpage=1” gibi bir yazıyla karşılaşırız.İşte bu adresin yapısındaki renkle gösterdiğim alanlar browser sayesinde sucuya veri iletiyorlar.Birazdan bunlara ve nasıl kullanıldıklarına değineceğim.
Yukarıdaki yazdığım örneği tekrardan buraya alıyorum.
http://www.hepsiburada.com/bilmemne.aspx?CategoryID=1&cpage=1
Adres çubuğundan bir veri iletimi yapmak istiyorsak eğer, sayfa uzantısından(.aspx) sonra soru işareti(?) koymalıyız.Daha sonra bu adreste taşınacak veriyi tutacak olan bir değişken ismi vermeliyiz(Örnek olarak CategoryID).Bu değişkenin taşıyacağı veriyi eşittir(=) operatörüyle atamalıyız.(Örnek olarak =1).Eğer bu adreste başka bir değişken daha tanımlamak istiyorsak ve(&) operatörünü kullanıp, ardından değişken ismini yazabilir ve anlattığım gibi değer atayabiliriz.
Tabi soracaksınız, bu verileri adreste taşıdık taşamasına ama nerde nasıl ulaşacaz diye 🙂
Şimdi bir örnek yapalım ve onun üzerinde gösterelim.Default.aspx ve Default2.aspx isimli sayfalarda çalışalım.
Default.aspx sayfasına bir tane Button nesnesi koyuyorum.Ve bu Button nesnesinin PostBackUrl özelliğine “~/Default2.aspx?ad=gncy&soyad=yildiz” yazıyorum.Bu ne demek?Bu Button nesnesine tıklandığı zaman, Default2.aspx sayfasına git, ve “ad” adından bir değişkenin içinde “gncy” verisini,”soyad” adında bir değişkenin içinde de “yildiz” verisini adresinde götür demektir.
Şimdi ise, Default2.aspx sayfasından bu değerleri okutalım.
---Default2.aspx---
string ad = Request.QueryString["ad"].ToString();
string soyad = Request.QueryString["soyad"].ToString();
Response.Write(ad + " " + soyad);
Yukarıda gördüğünüz gibi, Default2.aspx sayfasının adresindeki değişkenleri Request.QueryString[] komutuyla arıyoruz.
Request.QueryString[“ad”] diyerek, adres cubundaki “ad” ismindeki değişkenin değerini elde edersiniz.
Ekran görüntüsü “gncy yildiz” olacaktır.
Basit şekilde Request.QueryString yapısını anlatmış olduk.Sonraki yazılarımda görüşmek dileğiyle..
İyi çalışmalar.