Makalemiz boyunca oluşturucağımız bir aspx sayfamızdan 3 adet veri alıp bunları butonun click olayında QueryString kullanarak diger sayfaya taşıyacağız .
Bunun için ilk önce Default.aspx sayfamızı aşağıdaki gibi düzenleyelim .

Default.aspx sayfamızda iki adet textbox ekledik ve bunlara txt_ad - txt_soyad id lerini atadık . Daha sonra bir adet dropdownlist ekledik ve items girerek resimdeki gibi değerleri atadık .
Bizim buradaki amacımız form içerisine girilen degerlerimizi detay.aspx sayfamızda görmek . Dropdown list imiz acık oldugu için altında duran buton resimde gözükmemekdedir. Butonumuzun adı btn_gonder olarak ayarladık . btn_gonder butonumuzun Click olayına gidelim ve yonlendirme kodlarımızın üzerinde konuşalım .
protected voidbtn_gonder_Click(objectsender, EventArgse) {
Response.Redirect("detay.aspx?adi="+ txt_ad.Text + "&soyadi="+ txt_soyad.Text + "&takim="+ drp_takim.Text); }
Kodumuzda Response.Redirect ile detay.aspx sayfasına yönleniceğimizi belirtiyoruz .
QueryString iki önemli sembol vardır.
1 : ? sembolü url adresi ile querystring ifadelerimizi birbirinden ayırır .
2 : & sembolu ise sayfalar arası tasıyacagımız veri birden çok ise verilerimizi ayırmak için kullanılır .
Response.Redirect("detay.aspx?adi=" + txt_ad.Text + "&soyadi=" + txt_soyad.Text + "&takim=" + drp_takim.Text);
Gönder butonumuza bastığımız zaman aşagıdaki gibi URL adresimizin değiştiğini görürüz
Kodumuzda Response.Redirect ile detay.aspx sayfasına yönleniceğimizi belirtiyoruz .QueryString iki önemli sembol vardır. 1 : ? sembolü url adresi ile querystring ifadelerimizi birbirinden ayırır . 2 : & sembolu ise sayfalar arası tasıyacagımız veri birden çok ise verilerimizi ayırmak için kullanılır . Gönder butonumuza bastığımız zaman aşagıdaki gibi URL adresimizin değiştiğini görürüz 
Yukarıdaki URL adresinde de olduğu gibi detay.aspx sayfasına yönlendik .
? ile sayfa ile değerlerimizi ayırdık .
adi = Cengiz adi degiskenimizde Cengiz degeri saklı
& ile iki degisken verilerini ayırdık ve soyadi degiskenine Atilla degeri saklı
son olarak yine & kullanarak takim = Fenerbahçe degeri saklı
Burda fenerbahçe nin yanında %c3%a7e türkçe karakter problemlerinden dolayı olmuştur .
Şimdi detay.aspx sayfamızın page_load ına gidelim ve querystring den gelen verilerimiz karşılayalım .
protected voidPage_Load(objectsender, EventArgse) {lbl_adiniz.Text = Request.QueryString["adi"]; lbl_soyadiniz.Text = Request.QueryString["soyadi"]; lbl_takim.Text = Request.QueryString["takim"]; }
Yukarıda ki kodlarımızı açıklayalım . Page_load kısmında gelen değerlerimiz yakalamamız ve bunları kullanmamız gerekmektedir.
Request.Querystring[" degiskenadi "] seklinde verilerimizi yakalamakdayız .
Request.Querystring yerine Server.Transfer şeklinde kullanır isek URL kısmında değerlerimizin görünmemesinide sağlayabiliriz.
Bunun için mevcut örneğimizi şu şekilde değiştirmemiz yeterli olucaktır.
Default.aspx sayfamızdaki butonun olayında .
Server.Transfer("detay.aspx?adi="+ txt_ad.Text + "&soyadi="+ txt_soyad.Text + "&takim="+ drp_takim.Text);
Son Olarak QueryString e Eklenmemesi Gereken Karakterler .
# + & gibi semboller hataya yol açabilmekdedir . Bu ve bunun gibi hataları önlemek için Server.Encoding metotunu kullanmamız gerekmektedir.
Her ne kadar server.transfer metotumuz bizim url miz e birşey yazmasada önemli verilerde kullanılmamalıdır .
Cengiz ATİLLA
www.cengizatilla.com
atilla@cengizatilla.com