返回按钮问题...和注销按钮

时间:2011-11-17 10:18:08

标签: c# asp.net

我已经在google搜索了很多。我得到了所有代码但该代码不起作用。我创建了一个注销按钮,然后在按钮上单击将用户重定向到注销页面......但是进一步的事情并不顺利。

这是注销页面的代码

protected void Page_Load(object sender, EventArgs e)
{
    Session.Abandon();
    Session.Clear();
    Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.Cache.SetNoStore();  

}
protected void Timer1_Tick(object sender, EventArgs e)
{
    string redirectUrl = FormsAuthentication.LoginUrl + "?ReturnUrl=loginAcc.aspx";
    FormsAuthentication.SignOut();
    Response.Redirect(redirectUrl);

}

编辑:发生以下异常:找不到资源。

描述:HTTP 404.您正在查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。请求的网址:/MailFormat/login.aspx

4 个答案:

答案 0 :(得分:0)

我没有看到任何计时器控制。您的页面上是否有计时器控件并且是否已启用,以便Timer1_Tick被触发?

答案 1 :(得分:0)

尝试以下代码。

Response.Redirect(FormsAuthentication.LoginUrl);

FormsAuthentication.RedirectToLoginPage()更整洁。您应该在Web.config中设置defaultUrl属性,即<forms loginUrl="login.aspx" defaultUrl="index.aspx" />

答案 2 :(得分:0)

会话和身份验证是两个不同的事情,您需要在注销时同步。我想Logout Page_Load你应该这样做 FormsAuthentication.SignOut();然后清除会话。

答案 3 :(得分:0)

我找到了这个查询的解决方案===我添加了一个javascript函数

<script type="text/javascript" language="javascript"> 
function disableBackButton()
{
window.history.forward();
}
setTimeout("disableBackButton()", 0);
window.onload=disableBackButton(); 
window.onpageshow=function(evt) { if(evt.persisted) disableBackButton() } 
window.onunload=function() { void(0) }  
</script>

<script runat="server">

然后在身体上调用此函数

<body onload="disableBackButton()">

清除了退出点击时的所有注意事项 然后 在管理页面加载检查 对于会话值 如果为null则返回yo登录页面。以下是代码

 protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
    {
        try
        {
            Session.Abandon();
            Session.RemoveAll();
            Session.Clear();

            if (Session["hr"] == null && Session["EMPLOYEEID"]==null)
            {
                Response.Redirect("~/loginAcc.aspx");
            }
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }

    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["hr"] == null && Session["EMPLOYEEID"] == null)
        {
            Response.Redirect("~/loginAcc.aspx");
        }
    }