Asp.net kullanıcı girişi (login) işlemi ve session kullanımı

Kullanıcı giriş yapmak için butona tıkladığında çalışacağı kodu aşağıdaki gibi yazıyoruz.

 protected void Giris_Click(object sender, EventArgs e)
    {
        try // bir hata olmaması için kullanıcının farketmemesi için try catch bloğu içine yazıyoruz.
        {
            var connStr = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;  
 // yukarıda connectionstringi  web configden "myConnectionString" adı ile okuyoruz. 
 // isterseniz normal connection da yazabilirsiniz.
            SqlConnection cnn = new SqlConnection(connStr); // Burada connection nesnesini yaratıyoruz. 
            SqlCommand cmd = new SqlCommand("Select * from Kullanici where Kullaniciad=@ad and Sifre=@sifre", cnn); 
// Yukarıda veritabanına bağlanıp sorgulama işlemi için, kullanıcı tablosunda ad ve şifre varmı diye bağlanıp sorguyu yazıyoruz.
            cmd.Parameters.AddWithValue("@ad",username.Text);
            cmd.Parameters.AddWithValue("@sifre",password.Text);
 //sql injection açığına dikkat etmek için sorguya parametre geçiyoruz.
            cnn.Open(); // bağlantımızı açıyoruz
            SqlDataReader rd = cmd.ExecuteReader(); // sorguyu çalıştırıp gelen değeri sqldatareader nesnesine atıyoruz.
            if (rd.HasRows) //rd nesnemizde bir değer varmı diye kontrol ediyoruz.
            {
                while (rd.Read()) //gelen değeri while ile satır satır okuyoruz.
                {
                    Response.Write("Giriş Yaptınız. " + rd[0].ToString()); //ekrana giriş yaptınız ve kullanıcı adını yazdırıyoruz.
                    Session["adi"] = username.Text; // session oluşturuyoruz ve oluşturduğumuz "adi" sessiona kullanıcı adını atıyoruz.
                    Response.Redirect("/Default.aspx"); // giriş yaptığı için sayfayı default aspx sayfasına yönlendiriyoruz.
                    
                   
                }
            }
            else
            {
                Response.Write("Bilgileri Yanlış Girdiniz.Lütfen Daha sonra Tekrar Deneyin.");
//giriş yapamadığı için hata mesajı ekrana bastırıyoruz.
            }
            cnn.Close();
        }
        catch (Exception ex)
        {
            Response.Write(ex.ToString());
             
        }

    }