сбой команды в коде входа в C # на ASP.NET - PullRequest
0 голосов
/ 27 апреля 2018

Я делаю сайт, используя ASP.NET Framework. Мой код для страницы входа, как показано ниже, очень прост, так как я пытаюсь увидеть шаг за шагом, что происходит не так. Код C #:

 protected void userLogin(object sender, EventArgs e)
 {
     string encoded_pass = encrypt_pass(Password.Text);
     SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Khulna_website"].ConnectionString);
     connection.Open();
         using (SqlCommand cmd = new SqlCommand ("Select * from users where user_email= @email and user_password = @password"))
         {
             cmd.Parameters.AddWithValue("@email", Email.Text);
             cmd.Parameters.AddWithValue("@password", encoded_pass);

             try
             {
                 cmd.ExecuteNonQuery();
                 //SqlDataAdapter da = new SqlDataAdapter(cmd);
                 //DataTable dt = new DataTable();
                 //da.Fill(dt);
                 ////Session["User"] = dt.Rows[0]["user_email"];
                 //Session["User_name"] = dt.Rows[0]["user_f_name"];
                 //loginlabel.Text = "Welcome, " + Session["User_name"];
             }
             catch
             {
                 loginlabel.Text = "login error";
             }
     }
     connection.Close();
 }

Теперь каждый раз, когда я ввожу адрес электронной почты и пароль, он всегда выдает «errorr login». Почему команда не выполняется?

1 Ответ

0 голосов
/ 27 апреля 2018

Похоже, вы объявили соединение, но не присвоили его SqlCommand

using (SqlCommand cmd = new SqlCommand ("Select * from users where user_email= @email and user_password = @password",connection))
         {
             cmd.Parameters.AddWithValue("@email", Email.Text);
             cmd.Parameters.AddWithValue("@password", encoded_pass);

Обратите внимание, что я добавил переменную соединения в объявление cmd. В будущем вам также может понравиться ловить ваши ошибки в разработке:

catch (Exception ex)
             {
                 loginlabel.Text = "login error: "+ ex.Message;
             }

Это поможет вам узнать, что происходит не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...