asp.net清空session的值

protectedvoidLinkButton1_Click(objectsender,EventArgse){//Session.Clear();//Session.A... protected void LinkButton1_Click(object sender, EventArgs e)
{
//Session.Clear();
//Session.Abandon();
//Session["name"] = null;
Session.RemoveAll();
//Session.Remove("name");
Response.Redirect("login.aspx");
}

上面是我注销的方法

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session["name"] == null)
{
Response.Redirect("login.aspx");
}

这是page_load相关代码

我点击注销过后,回到login页面,

此时,我输入网址,却能够进去。

唉。。怎么回事啊。
session没理由没有清空啊。

我也想到是浏览器的问题啊。。
那么 , 如何解决这个问题呢?
展开
 我来答
xft_1981
2010-06-17 · TA获得超过502个赞
知道小有建树答主
回答量:352
采纳率:0%
帮助的人:125万
展开全部
你肯定是犯晕了!
并不是Session的问题,也不是IsPostBack的原因
是你直接输入网址的原因!!
直接输入网址,如果浏览器缓存没禁用的话,是首先要从缓存加载的,不信你在Page_Load上加个断点试一下是否执行
刷新一下页面,看看效果!

不用管它,正常现象!你可以在页面上加一个A链接到后台页面,这样进去的时候就是最新页面了
lirenjucn
2010-06-16 · 超过73用户采纳过TA的回答
知道答主
回答量:174
采纳率:0%
帮助的人:163万
展开全部
protected void Page_Load(object sender, EventArgs e)
{

if (Session["name"] == null)
{
Response.Redirect("login.aspx");
}

每次载入页面都要判断一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
最后的仙人
2010-06-16 · TA获得超过1961个赞
知道大有可为答主
回答量:1509
采纳率:0%
帮助的人:1398万
展开全部
同意楼上的,你在任何时候都需要判断这个session是否存在
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-06-16
展开全部
if (!IsPostBack)
去掉

不是每个页面都用得着判断是否回发
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式