[英]Session ends in ASP.NET Web application
亲爱的,
我有一个ASPX.Net应用程序(框架4.5.1),它似乎会话每20分钟结束一次,我尝试执行以下操作,但是会话仍然在20分钟后结束。
在配置文件中,我添加:
<system.web>
<sessionState timeout="60000" cookieless="AutoDetect" mode = "InProc" />
</system.web>
添加新会话时,我添加:
HttpContext.Current.Session.Timeout = 60000;
在全局类中,我添加:
protected void Session_Start(object sender, EventArgs e)
{
Session.Timeout = 60000;
}
请注意,我试图增加超时并减少超时,但是没有任何改变。
一些托管服务提供商会覆盖您的配置。 您无法更改该值。 我建议您使用Cookie代替Session。
如果要使用会话,则可以使用此基本功能。 将此代码块添加到您的MasterPage / Layout。 在添加之前,您需要为这些请求创建一个空白页。
<script>
PingAspToKeepSession();
function PingAspToKeepSession() {
var url = "/Session/Refresh";
var httpOb = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
httpOb.open("POST", url, true);
httpOb.send("");
window.setTimeout("PingAspToKeepSession();", 60000); // every 60 seconds
}
</script>
或者您可以尝试更改machine.config:C:\\ Windows \\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ Config \\ machine.config
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.