我的用户抱怨我的Intranet网页经常超时。在寻找解决方案时,我发现了这篇文章:
http://forums.asp.net/t/152925.aspx?PageIndex=1
如果海报建议拦截重定向到登录页面,请将数据提交到数据库,然后重新授权用户(不知情)或重定向到登录页面。我的目标是避免用户在表单中输入数据,离开,然后返回提交,只是被告知他们必须再次登录的情况(如果数据保留且用户被正确发送,这很好)回到原来的网络形式)。
有谁知道如何在我的应用程序中的特定页面上完成此操作(不是全部)?
答案 0 :(得分:5)
这不一定是微不足道的,但您可以添加一个ajax组件,该组件偶尔会调用页面以保持会话处于活动状态。这样,您可以延长所需的任何特定页面的会话,而不会影响整个应用程序。
修改强>
如果你真的想让会话过期,但保留表单数据,你可以实现
protected void Application_PostAuthenticateRequest (object sender, EventArgs e)
global.asax.cs文件中的事件处理程序。这是在表单身份验证重定向发生之前调用的,此时表单数据可供您的应用程序使用,因此您可以将其保留到任何必要的介质,直到您的用户再次进行身份验证。另外,如果你检查
((HttpApplication)sender).Request.Path
属性会告诉您请求了哪个页面。
答案 1 :(得分:0)
好吧,它可以轻松地延长web.config
文件中指定的超时时间。
答案 2 :(得分:0)
我将尝试使用cookie来保存数据。我的计划是在每个控件更改后更新用户的cookie,然后在页面的page_load属性中添加逻辑,以便在用户重新登录后填充表单数据。