ログインシステムに関して、ここのコードに問題があります。データベースに 1 つのユーザー名とパスワードを追加すると、正しく機能します。しかし、データベースに別の 1 つのユーザー名とパスワードを追加すると、else ステートメントが 2 回ポップアップします。3 つのユーザー名とパスワードを指定すると、else ステートメントが 3 回表示されます。などなど..これが私のコードです..私のコードよりも優れたコードがある場合は、それを示してください。
SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\JEDMARC\\Desktop\\VS v1.0.0\\Voting System v1.0.0\\Voting System v1.0.0.mdf;Integrated Security=True;User Instance=True");
SoundPlayer t = new SoundPlayer(@"C:\Users\JEDMARC\Documents\welcome.wav");
private void btnEnter_Click(object sender, EventArgs e)
{
if (cmbToE.Text == "HomeRoom Election" && comboBox1.Text == "English")
{
con.Open();
SqlCommand da = new SqlCommand("SELECT * FROM RegistrationTable", con);
SqlDataReader reader = null;
reader = da.ExecuteReader();
while (reader.Read())
{
if (tbUsername.Text == (reader["Username"].ToString()) && tbPassword.Text == (reader["Password"].ToString()))
{
MessageBox.Show("*Choose your best candidate. Use a Combobox.\n\n*After choosing, click Submit button to pass your vote!\n\n VOTE WISELY!", "How to vote?", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
UserHRForm x = new UserHRForm();
x.Show();
t.Play();
this.Close();
}
else
{
SystemSounds.Hand.Play();
MessageBox.Show("Access Denied! Account doesn't exist!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand);
}
}
}
}