arkadaslar rehber.aspx sayfamdaki gridview e ıtemtemplate olarak bi linkbuton yerleştirdim.(kayıtdüzenle adında)linke tıklanınca seçili olan satırın ıd sini sessionda tutup o kaydın ismini kayıtdüzenle.aspx sayfasındaki ad=textbox1 de gözükmesini sağlamak istiyorum.bunun için; linkbutonun click olayına şu kodları yazdım protected void LinkButton1_Click(object sender, EventArgs e) { if (GridView1.SelectedIndex > -1) { Session["ID"] = GridView1.SelectedRow.Cells[2].Text; Response.Redirect("kayitdüzenle.aspx"); }
} kayıtdüzenle.aspx in page loadına ise şunu yazdım; protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["ID"] != null) {
int kisiID = Convert.ToInt32(Session["ID"].ToString());
SqlConnection sc = new SqlConnection();
sc.ConnectionString = @" Data Source=IMUHASEBE2;Initial Catalog=CALLREC;Integrated Security=True";
sc.Open();
SqlCommand com = new SqlCommand();
com.Connection = sc;
com.CommandText = "select MUSADI from MUSTERI where ID = @kisiID ";
SqlParameter sp = new SqlParameter("@kisiID", SqlDbType.Int);
sp.Value = Textbox1.Text;
com.Parameters.Add(sp);
}
}
linke tıklayınca hiçbirşey olmuyo.. hatam nerde acaba yardım edermisiniz?
_____________________________
Çalışmamasının sebebi önce değeri Session a atarken diğer sayfada QueryString olarak almaya çalışıyorsun..QueryString değeri olması için
Response.Redirect("kayitdüzenle.aspx");
satırının Response.Redirect("kayitdüzenle.aspx?id=" + Session["ID"].ToString()); şeklinde olması gerekir.
tabi bu durumda sessionda kullanmak zorunda değilsin