こんにちは私はログインフォームで作業しています。私は自分のウェブサイト上のアカウントにサインアップできますが、ユーザー名とパスワードを入力するとログインできません。私は2つのコードを比較していると思われるコードをいくつか持っていますが、何らかの理由で動作していないだけです。ここに私のコードです。何らかの理由でコードの最後にwhileループを実行することさえありません。どんな助けもありがたいですログイン資格を比較してください
private bool CompareStrings(string string1, string string2)
{
return String.Compare(string1, string2, true, System.Globalization.CultureInfo.InvariantCulture) == 0 ? true : false;
}
public void LogInAccount(string UserName, string UserPassword, Label InvalidLogIn)
{
connection.ConnectionString = @"Connection String";
connection.Open();
string compare = "select ISNULL(UserName, '') As UserName, ISNULL(UserPassword, '') As UserPassword from SignUp where UserName= @UserName";
SqlCommand CompareUser = new SqlCommand(compare, connection);
//SqlCommand Command2 = new SqlCommand("select * from SignUp where FirstName= @FirstName", connection);
//Command2.Parameters.AddWithValue("@FirsName", FirstName.Text);
CompareUser.Parameters.AddWithValue("@UserPassword", UserPassword);
CompareUser.Parameters.AddWithValue("@UserName", UserName);
SqlDataReader dr = CompareUser.ExecuteReader();
//string User = UserName;
//string UserPassword = Password;
//HtmlAnchor LogIn = (HtmlAnchor)Master.FindControl("LogIn");
//HtmlAnchor SignUp = (HtmlAnchor)Master.FindControl("SignUp");
while (dr.Read())
{
if (this.CompareStrings(dr["UserName"].ToString(), UserName) &&
this.CompareStrings(dr["UserPassword"].ToString(), UserPassword))
{
InvalidLogIn.Visible = false;
FormsAuthentication.RedirectFromLoginPage(UserName, true);
}
else
{
InvalidLogIn.Visible = true;
}
}
connection.Close();
}
お返事ありがとうございました。私は実際にそれを試みましたが、残念ながらそれは動作しませんでした。それは私がちょうど今キャッチしていない何かが奇妙です –
SQLコードは有効です(物事の全体的な意味を変更する@のための必要はありません。) –
面白いどのようにユーザーをログインさせていない来ています。私はwhileループを実行しなくてもデバッグすることができます。コード以外のものと関係があると思われますか?ありがとうございます –