使用 ASP.net 管理 Web 配置文件中的会话



我的代码中有两个会话:

用于用户登录身份验证的会话["电子邮件"]

会话["prevUrl"]以记住上次访问的页面

我想知道如何在我的网络配置文件中管理会话超时。 我只希望会话["电子邮件"]超时,以便用户可以在重新登录时重定向到访问的最后一个页面。目前,两个会话都在 1 分钟后超时

谢谢

网络.config

 <sessionState mode="InProc" customProvider="DefaultSessionProvider" timeout="1">
</sessionState>

全球.asax.cs

void Session_Start(object sender, EventArgs e)
{
        // Code that runs when a new session is started  
if (Session["prevUrl"] != null)
{
  Response.Redirect((string)Session["prevUrl"]); //Will redirect to previous page visited
}
else
{
  //Redirect to Login Page if Session is null & Expires   
   Response.Redirect("Login.aspx");
}
}

C# 页面加载

 protected void Page_Load(object sender, EventArgs e)
 {
    Session["prevUrl"] = Request.Url;
        if (Session["Email"] == null)
        {
            Response.Redirect("Login.aspx");
        }
 }

无法强制会话密钥过期。对于此方案,您必须使用缓存。

最新更新