Система бронирования билетов: проблема с доступом к базе данных - PullRequest
0 голосов
/ 25 октября 2019

Я создаю систему бронирования автобусных билетов. Я создал базу данных под названием traveller и две таблицы с именами Useriden и BusDB соответственно. В файле aspx.cs (страница регистрации) я проверяю дубликаты имен пользователей, но он просто переходит на следующую страницу

Я перепробовал все, но не смог решить эту проблему. Я не получаю никаких ошибок или предупреждений.

protected void BtnConfirmSignup_Click(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection("Data Source=(localdb)\\MSSQLlocalDB;Initial Catalog=traveller;Integrated Security=True;Pooling=False");
        SqlCommand cmd;
        SqlDataReader read;
        /*DEBUG: Prevent duplicate usernames*/
        try
        {
            Session["user"] = TxtUsrName.Text;
            Session["pass"] = TxtPsswd.Text;
            Session["email"] = TxtEmail.Text;

            cmd = new SqlCommand("select Name from Useriden",con);
            con.Open();
            read = cmd.ExecuteReader();
            while (read.Read()) {
                if ((read["Name"].ToString()).Equals(TxtUsrName.Text))
                {
                    throw new Exception("Invalid Username");

                }
                else
                {
                    Response.Redirect("SignUpNext.aspx");
                }
            }
        }
        catch (Exception ex) {
            LabelUserName.Visible = true;
            LabelUserName.Text = ex.Message;
            con.Close();
            ViewState["Caption"]=ex.Message;
            }
      }

При нажатии на кнопку подтверждения, он должен проверить наличие дублирующих имен пользователей. У меня уже есть одна запись с именем "Faf" в моей таблице Useriden. Когда я пытаюсь зарегистрироваться, используя то же имя пользователя, он не выдает исключение, вместо этого он переходит к SignUp.aspx.

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

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