Небольшой проект с несколькими страницами входа, один из которых имеет счетчик выбора 1, а другой - вставку в - PullRequest
0 голосов
/ 26 апреля 2020

Позвольте мне объяснить мой небольшой проект, чтобы вы могли получить мой вопрос. Он имеет страницу множественного входа в систему на странице входа, с которой сервер SQL выбирается, а на другой странице вставьте, чтобы пользователь отправил свой запрос система. мой вопрос, я хочу знать, как подняли запрос. По сути, я хочу, чтобы имя пользователя со страницы входа в систему было добавлено к вкладке в таблицу для пользователей.

 if (sqlCon.State == ConnectionState.Closed)
                sqlCon.Open();
                string query = "SELECT count (1) FROM Login WHERE Username=@Username AND password=@password AND usertype=@usertype";
            SqlCommand sqlCmd = new SqlCommand(query, sqlCon);
            sqlCmd.CommandType = CommandType.Text;
            sqlCmd.Parameters.AddWithValue("@Username", txtUsername.Text);
            sqlCmd.Parameters.AddWithValue("@password", txtPassword.Text);
           if (checkbox1.IsChecked == true)
            sqlCmd.Parameters.AddWithValue("@usertype", checkbox1.Content.ToString());
            else if (checkbox2.IsChecked == true)
                sqlCmd.Parameters.AddWithValue("@usertype", checkbox2.Content.ToString());
            int count = Convert.ToInt32(sqlCmd.ExecuteScalar());
            if (count == 1)
            {
                if ((bool)checkbox1.IsChecked == true)
                {

                    MainWindow Dashboard = new MainWindow();
                    Dashboard.Show();
                    MessageBox.Show("You're logged in as an Admin");
                    this.Close();
                }

                if ((bool)checkbox2.IsChecked == true)
                {

                    Student stu = new Student();
                    stu.Show();
                    MessageBox.Show("You're logged in as a Student");

                    this.Close();
                 }

/// другая страница (страница запроса)

                var table = "INSERT INTO  Student(UserName,DepartureCiry,ArrivalCity,DateOfDeparture,DateOfReturn)VALUES(@UserName,@DepartureCiry,@ArrivalCity,@DateOfDeparture,@DateOfReturn)";
            using (var cmd = new SqlCommand(table, Con))
            {
                cmd.Parameters.AddWithValue("@DepartureCiry", fromtxt.Text);
                cmd.Parameters.AddWithValue("@ArrivalCity", Totxt.Text);
                cmd.Parameters.AddWithValue("@DateOfDeparture", date_time_picker.Text);
                cmd.Parameters.AddWithValue("@DateOfReturn", date_time_picker1.Text);

                cmd.ExecuteNonQuery();
                MessageBox.Show("Data inserted suckssfully");
            }
        } 

1 Ответ

1 голос
/ 28 апреля 2020

Вы можете передать имя пользователя со страницы входа в окно Student.

Есть несколько способов сделать это. Например, вы можете добавить свойство в окно Student:

public string Username { get; set; }

, а затем установить это свойство перед тем, как открыть окно:

if ((bool)checkbox2.IsChecked == true)
{
    Student stu = new Student() { Username = txtUsername.Text };
    stu.Show();
    MessageBox.Show("You're logged in as a Student");
    this.Close();
}

После этого вы сможете получить доступ к this.Username чтобы получить имя пользователя в окне Student.

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