Hey guys, I want to assign a value from my DataReader into a session object but I keep getting errors. Basically I want a database value retrieved and stored into a session object. Here's what I got:
Code:
protected void Page_Load(Object sender, EventArgs e){
}
protected void Login_OnClick(Object sender, EventArgs e){
string SqlStmt = "SELECT COUNT(*) FROM Users WHERE user_name='" +
UserName.Text.Trim() + "' " + "AND password = '" + Password.Text.Trim() + "'";
OleDbConnection con = new
OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\net\MyData.mdb;");
OleDbCommand cmd = new OleDbCommand(SqlStmt, con);
OleDbDataReader reader = null;
con.Open();
reader = cmd.ExecuteReader();
while(reader.Read()){
if(Int32.Parse(reader[0].ToString()) >= 1)
{
Session["user"] = reader("user_name"); //THIS IS WHERE I'M MESSING UP
FormsAuthentication.RedirectFromLoginPage(UserName.Text,
PersistCookie.Checked);
}else{
ErrorMsg.Text = "<p><b>" +
"User not found, or bad credentials - try again!" +
"</b></p>";
}
}
}
protected void Signout_OnClick(Object sender, EventArgs e){
FormsAuthentication.SignOut();
HttpContext.Current.Response.Redirect("login_database.aspx");
}
HERE IS THE ERROR I'M GETTING, IT'S ON LINE 32:
Compiler Error Message: CS0118: 'reader' denotes a 'variable' where a 'method' was expected
Source Error:
Line 30: {
Line 31:
Line 32: Session["user"] = reader("user_name").ToString();
Any Ideas?
Thanks guys!
Take care,
Chris