为什么COOKIE清除不了?
private void logout_Click(object sender, System.EventArgs e)
{
if(Request.Cookies["lcbbs"]!=null)
{
Session.Remove("username");
Session.Remove("userlevel");
HttpCookie cookie=Request.Cookies["lcbbs"];
cookie.Expires=DateTime.Now.AddDays(-1);
cookie.Values.Clear();
LoadLogin();
}
}
退出登录以后通过以下函数检测是不是登录
结果还是登录过
# region 装载登录条
public void LoadLogin()
{
if(Request.Cookies["lcbbs"]!=null)
{
HttpCookie cookie=Request.Cookies["lcbbs"];
Session["username"]=cookie.Values["username"];
Session["userlevel"]=cookie.Values["userlevel"];
}
if(Session["username"]==null)
{
this.pan1.Visible=true;
this.pan2.Visible=false;
}
else
{
string shenfen=null;
switch((string)Session["userlevel"])
{
case "9":shenfen="管理员";break;
case "8":shenfen="论坛版主";break;
case "7":shenfen="普通会员";break;
}
this.pan2.Visible=true;
this.pan1.Visible=false;
this.logname.Text=(string)Session["username"];
this.shenfen.Text=shenfen;
}
}
# endregion
# region 退出登录
private void logout_Click(object sender, System.EventArgs e)
{
if(Request.Cookies["lcbbs"]!=null)
{
Session.Remove("username");
Session.Remove("userlevel");
HttpCookie cookie=Request.Cookies["lcbbs"];
cookie.Expires=DateTime.Now.AddDays(-1);
cookie.Values.Clear();
LoadLogin();
}
}
# endregion
下面是登录时候的验证
public void addLoginCookie(int day)
{
HttpCookie cookie=new HttpCookie("lcbbs");
cookie.Values.Add("username",(string)Session["username"]);
cookie.Values.Add("userlevel",(string)Session["userlevel"]);
cookie.Expires=DateTime.Now.AddDays(day);
Response.AppendCookie(cookie);
}