我在Web.config和globals.asax文件中做了一些修改,给出了一些额外的时间限制,但会话在给定的时间内没有工作。有时很快就会过期。
的Web.config:
<sessionState mode="InProc" customProvider="DefaultSessionProvider" timeout="60000"/>
<authentication mode="Forms">
<forms loginUrl="~/Home/Login" timeout="28880"/>
</authentication>
的Global.asax /在session_start():
Session.Timeout = 1200;
我在需要的地方为会话添加了名称空间,但会话问题仍然存在,会话在所有编码完成后都是无状态的。
请任何人建议一个正确的解决方案,或者如果我的流程含糊不清,请告诉我如何以标准方式进行。
感谢。将不胜感激。
答案 0 :(得分:1)
你在两个不同的地方提供超时我的意思是你需要在web.config或global.asax文件中提供超时,所以最好从global.asax删除超时声明..
如此处所记载http://www.aspdotnet-suresh.com/2010/10/session-timeout-problem-in-aspnet.html: -
默认情况下,我们的网站会话超时是在该会话后20分钟 如果我们想在我们的设置中设置自定义超时,则会过期 应用程序我们可以用不同的方式设置它(web.config,global.asax 并在IIS)
检查以下方法,在web.config,global.asax中设置会话超时 并在iis
在Web.config文件中,我们可以设置会话超时,如下所示
<configuration>
>
> <system.web>
>
> <sessionState mode="InProc" timeout="60">
>
> </sessionState>
>
> </system.web>
>
> </configuration>
在Global.asax文件中,我们可以在Session_Start事件中设置会话超时 像这样
void Session_Start(object sender, EventArgs e)
>
> {
>
> // Code that runs when a new session is started
>
> Session.Timeout = 15;
>
> }
如果您在web.config和iis iis中设置会话超时 session out value覆盖web.config会话超时
答案 1 :(得分:0)
如果上述解决方案不起作用,请删除
<authentication mode="Forms">
<forms timeout="50"/>
来自web.config文件