Я пытаюсь сохранить значение UserID в классе после успешного входа в систему. Когда нажимается кнопка входа в систему, она проверяет вход в систему в текстовых полях, используя @user, @ pass.
Моя проблема в том, что я не знаю, как написать программу чтения SQL и сохранить полученный int в классе. Я также не знаю, как написать этот класс.
Мне нужно сохранить его в классе, чтобы я мог использовать его в разных формах, чтобы проверить, в какую учетную запись вошел пользователь.
РЕДАКТИРОВАТЬ: Обновлен код из предложений, но я получаю ошибки Изображение ошибки Есть идеи, где я сделал ошибку?
private LoginUser validate_login(string user, string pass)
{
db_connection();
MySqlCommand cmd = new MySqlCommand();
cmd.CommandText = "Select * from table2 where username=@user and password=@pass";
cmd.Parameters.AddWithValue("@user", user);
cmd.Parameters.AddWithValue("@pass", pass);
cmd.Connection = connect;
LoginUser usr = new LoginUser();
MySqlDataReader login = cmd.ExecuteReader();
while(login.Read())
{
connect.Close();
usr.UserID = login["UserID"];
usr.valid = true;
}
return usr;
}
private void button1_Click(object sender, EventArgs e)
{
{
string user = usertype.Text;
string pass = password.Text;
if (user == "" || pass == "")
{
MessageBox.Show("Empty Fields Detected ! Please fill up all the fields");
return;
}
bool r = validate_login(user, pass);
if (r)
{
LoginUser usr = new LoginUser();
usr = validate_login(user, pass);
if (usr.valid)
{
Console.WriteLine(String.Format("{0}", usr.UserID));
UserDetails.m_gnUserId = Convert.ToInt32(reader["UserID"]);
}
}
}
}