【发布时间】:2009-11-27 00:53:13
【问题描述】:
会话到期时我的应用程序抛出错误。
我不希望会话自动过期....
但是如果没有办法做到这一点,那么应该将它重定向到登录页面而不是显示错误...
我试图这样做......
Response.AppendHeader("Refresh", Convert.ToString((Session.Timeout * 60) + 10) + "; URL=Login.aspx");
会话到期时此代码不起作用..我收到一条错误消息
响应在此上下文中不可用。
网络配置有这个
<authentication mode="Forms">
<forms loginUrl="Login.aspx" name="Cookie" timeout="10080" path="/">
</forms>
</authentication>
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
还有什么我需要在网络配置中添加的...
任何建议...谢谢
这是我的页面加载
protected void Page_Load(object sender, EventArgs e)
{
Response.AppendHeader("Refresh", Convert.ToString((Session.Timeout * 60) + 10) + "; URL=Login.aspx");
string userName = Session["userName"].ToString();
string password = Session["password"].ToString();
string domain = Session["domain"].ToString();
impersonateValidUser(userName, domain, password);
}
【问题讨论】:
-
你在哪里添加代码?响应应该在 Page_load 中可用。
-
这篇文章可能会帮助您编写解决问题的方法:aspalliance.com/520_Detecting_ASPNET_Session_Timeouts