C# を使って ASP.NET を学習しているのですが、認証コードを次のように書いてみました。
SqlCommand command = new SqlCommand("Select [ID] from [Inspector] WHERE [ID] ='111' AND [Password] ='111';", conn);
SqlDataReader dr = command.ExecuteReader();
if (dr[0].ToString() == username)
{
Session["UserAuthentication"] = username;
Session.Timeout = 1;
Response.Redirect("About.aspx");
}
else{
// ...
}
はSQL ServerID
の型です。numeric
問題は、常に例外が発生することです:
データが存在しない場合の読み取りの試みは無効です。
この部分では: if (dr[0].ToString() == username)
.
正確な SQL ステートメントを直接実行しようとしましたが、結果を取得できます。