在asp.net中,由于会话超时,登录后重定向到同一页面

本文关键字:登录 超时 重定向 一页 会话 net asp 于会话 | 更新日期: 2023-09-27 17:53:03

嗨,在asp.net web应用程序中,由于会话超时,登录后是否有办法登陆同一页面?我最近从java迁移到。net,任何建议都会很有帮助。例如

我在Page1上,当我在Page1上空闲时,我的会话被销毁,我被重定向到Logging页面。在我登录到系统后,目前我在默认页面。我想做的是在日志记录后简单地重定向到Page1。对不起,我的英语不好。

这里是Web.config

<authentication mode="Forms">
<forms loginUrl="~/Login.aspx" timeout="2880"/>
</authentication>

和登录按钮功能#region"Validate login user"ValidateUser(){

        try
        {
            string con = ConnectionSetting.SQLDBConnectionString();
            sUserNameT = this.txtUname.Text.ToLower();
            sPassWordT = this.txtPassword.Text;
            Some required functions user......
            if (check some stuff)
            {
                Decrypting and other stuff....
                if (matching password)
                {
                    if (if the logging success)
                    {
                        LoadScreensByUser(userbyactive.UserId, con);
                        UserLogedDetails(userbyactive.UserId);//Log User Loging Records.
                        Response.Redirect("~/Main.aspx");
                    }
                    else
                    {
                        Output...();
                    }
                }
                else
                {
                    Output...();
                }
            }
            else
            {
                Output...();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    #endregion

这里我已经提供了所需的最低代码…

在asp.net中,由于会话超时,登录后重定向到同一页面

你应该改变

Response.Redirect("~/Main.aspx");

到这个方法

FormsAuthentication.RedirectFromLoginPage(userbyactive.UserId, false);

否则你将永远在Main.aspx

页面结束

RedirectFromLoginPage将把您发送到浏览器先前请求的页面。

尝试将此添加到您的web.config文件

    <authentication mode="Forms">
        <forms loginUrl="~/Index.aspx" timeout="120" slidingExpiration="true"/>
    </authentication>
关于asp.net认证模式的更多信息,请参见THIS和THIS