C# Asp.net会话在live Web服务器上随机过期

C# Asp.net会话在live Web服务器上随机过期,c#,asp.net,session,C#,Asp.net,Session,我确实面临asp.net web应用程序的问题。我正在使用会话,在我的本地计算机和IIS服务器上似乎没有问题 但在我的live server上,会话会随机过期(最多5分钟,最多30分钟)。我已经尝试了几乎所有的可能性,但我从来没有赢过 请告诉我如何解决我的问题 您是否尝试过使用webconfig <configuration> <system.web> <sessionState timeout="20"></sessionState>

我确实面临asp.net web应用程序的问题。我正在使用会话,在我的本地计算机和IIS服务器上似乎没有问题

但在我的live server上,会话会随机过期(最多5分钟,最多30分钟)。我已经尝试了几乎所有的可能性,但我从来没有赢过


请告诉我如何解决我的问题

您是否尝试过使用webconfig

<configuration>
  <system.web>
     <sessionState timeout="20"></sessionState>
  </system.web>
</configuration>

尝试在会话结束事件时登录global.asax,并将会话模式设置为InProc

void Session_End(object sender, EventArgs e)
    {
        // Code that runs when a session ends. 
        // Note: The Session_End event is raised only when the sessionstate mode
        // is set to InProc in the Web.config file. If session mode is set to StateServer 
        // or SQLServer, the event is not raised.

    }
<configuration>
  <system.web>
     <sessionState mode="InProc" timeout="20"></sessionState>
  </system.web>
</configuration>
void Session\u End(对象发送方,事件参数e)
{
//会话结束时运行的代码。
//注意:只有在sessionstate模式下才会引发Session_End事件
//在Web.config文件中设置为InProc。如果会话模式设置为StateServer
//或SQLServer,则不会引发该事件。
}

这样你就可以找出导致会话过期的原因。

我也在研究同样的问题,并发现一篇类似的帖子,上面说你的应用程序内存可能由于内存不足而被回收


您的web.config文件中是否有以下设置<代码>是的,我有,我的超时时间设置为9999是否有清除会话变量的代码?是否检查了日志?可能应用程序池会重新启动。是的,我曾尝试过将其连接到9999,这就是为什么它总是在我的本地计算机和iis服务器上运行。感谢您的回复…您是否尝试了模式..有关会话模式的详细信息…然后您必须从live server检查会话超时设置,该设置将位于默认网站设置中..您能告诉我导致随机过期问题的确切原因吗。如果它同时到期,意味着我必须增加。但在这种情况下,我不知道该怎么办