为什么我的数据用Session传不过来,看代码
DAL层:
private const string SQL_SELECT_USERINFO_U_P = "select * from UserInfo where AuthorName=@AuthorName and PassWord=@PassWord";
public static UserInfo SelectUserInfo(UserInfo user)
{
using (SqlDataReader rdr = SQLHelper.ExecuteReader(CommandType.Text,
SQL_SELECT_USERINFO_U_P,
new SqlParameter("@AuthorName",user.AuthorName),
new SqlParameter("@PassWord",user.PassWord)))
{
if (rdr.Read())
{
user = new UserInfo(rdr.GetString(0), rdr.GetString(1));
return user;
rdr.Close();
}
return null;
}
}
BLL层:
public static UserInfo SelectUserInfo(UserInfo user)
{
return UserInfoService.SelectUserInfo(user);
}
WEB层登陆页面:
rotected void Button1_Click(object sender, EventArgs e)
{
string AuthorName = this.txtUserName.Text.Trim();
string Password = this.txtPassword.Text.Trim();
UserInfo user = new UserInfo(AuthorName, Password);
if (UserInfoManager.SelectUserInfo(user) == null)
{
this.lblErrorMessage.Text = "登录失败!";
}
else
{
user.LoginTimes++;
Session["info"] = user;
Response.Redirect("~/Main.aspx");
}
}
登录后界面:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["info"]==null)
{
Response.Redirect("~/Default.aspx");
}
UserInfo user = Session["info"] as UserInfo;
this.lblAuthorName.Text = user.AuthorName;
this.lblDay.Text = DateTime.Now.ToString("yyyy-MM-dd");
this.lblLoginTimes.Text = user.LoginTimes.ToString();
this.lbldatetime.Text = DateTime.Now.ToString("hh:mm");
}
AuthorName可以正常传过来的,可是lblLoginTimes就不行,传不过来值的,我的SQL语句查询的是表中的一行数据啊,为什么有的传过来了,有的就没传过来呢,请给我写出正确的代码让我参考一下谢谢啦