【问题标题】:How do I keep timeout time of different session variables different如何保持不同会话变量的超时时间不同
【发布时间】:2014-08-27 16:00:22
【问题描述】:

我正在使用两个会话变量sessionLoginsessionPageNameSessionLogin 将保存登录用户的登录名,sessionPageName 将保存当前加载的页面的名称。随着sessionLogin 超时发生,页面被重定向到登录页面。 sessionPageName 的目的是将用户重定向到用户在 sessionLogin 超时之前最后查看的页面。

我的问题是如果sessionLogin 过期,考虑到会话超时间隔在 20 分钟之后,sessionPageName 也会过期吗?如何将sessionPageName 的超时时间延长至例如 30 分钟并将sessionLogin 的生命周期保持为默认值?

或者,asp.net C# 中是否有办法将用户带到他们在sessionLogin 过期之前查看的最后一个页面,从而导致在我的代码中直接进入登录页面?

【问题讨论】:

标签: c# asp.net session


【解决方案1】:

如果使用的是FormAuthentication,则您正在寻找ReturnUrl

FormsAuthentication.RedirectFromLoginPage

(使用 ReturnUrl QueryString 参数)

FormAuthenticationmsdn 链接

【讨论】:

  • 感谢您的评论。我按照你的方式做了。我有一个使用表单的母版页,并且在其内容占位符中使用了表单身份验证。但是当会话到期并且用户被重定向到登录页面时,在用户登录后,用户在被重定向到登录页面之前会显示他上次浏览的页面的主页。我错过了什么吗??
  • 你在使用formauthentication吗?
  • 我在会话中保留了登录用户名和密码,并使用了 FormsAuthentication.RedirectFromLoginPage(loginName, true);重定向到主页。现在,随着会话到期,用户被重定向到登录页面。在这里,当用户再次输入登录名和密码时,他被定向到主页,但我希望他定向到他上次查看的页面。我的 web.config 标签是 ::
  • 呀。我的母版页使用表单,我在其内容占位符页面中使用表单身份验证
  • 当会话超时时,它会使用一个查询字符串参数ReturnUrl 重定向到default.aspx。您是否在查询字符串中获取此参数?
猜你喜欢
  • 2011-08-29
  • 1970-01-01
  • 1970-01-01
  • 2014-10-12
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多