Session["arama"] = TextBox1.Text;
Response.Redirect("arama.aspx");
sessionların da sorun vardır. hem bu asp.net i aşırı kasar. ram sorunu ve performans etkilemesinde gerkesiz bir tanım.
Response.Redirect(string.Format("arama.aspx?q={0}" ,TextBox1.Text.Trim());
bunla değiştir.
arama.aspx de de:
if(!string.IsNullOrEmpth(Request.QueryString["q"]))
{
SqlConnection con = new SqlConnection(
ConfigurationManager.ConnectionStrings["DvdShopCenter"].ConnectionString);
SqlCommand com = new SqlCommand(
"arama", con);
com.CommandType = System.Data.CommandType.StoredProcedure;
com.Parameters.AddWithValue("@arama", Request.QueryString["q"]);
con.Open();
SqlDataReader rd = com.ExecuteReader();
rd.Read();
filmadi.Text = rd["FilmAdi"].ToString();
con.Close();
}
else
{
filmadi.Text="Lütfen Aramak istediğiniz kelimeyi belirtin!";
}
bu eklediğim kodlar q ile gelen aranacak kelimeyi alır kontrol eder boş mu değilmi diye.
Eğer boşsa uyarı verir. Boşuna hata almazsın
DataReader ın satır sayısını da kontrol ettiripi veri var mı yok mu kontrol ettirirsin.
birde oluşturduğun nesneleri dispose la. yoksa performans sorunu oluşacaktır.
rd.Dispose();
com.Dispose();
con.Dispose();
gibi yada
using(){} içine al işi bitince otomatik bellekten atılsın. bu en iyisidir. çünkü hata dahi olsa işlemleri kapatır bellekten siler.
Kolay gelsin.