使用回调在网站上过期的会话

时间:2011-07-21 08:54:04

标签: c# asp.net

我有一个aspx.cs页面,它只使用回调连接到服务器端。

网站开始运行后,如果我在此页面上工作几分钟,则会话已过期。我只使用了回调,我没有使用任何回发。 我认为会话已经过期,因为它不是来自回发,但我的网站是基于回调的,我从不使用回发。

如何解决此过期的会话问题?

1 个答案:

答案 0 :(得分:0)

通过CallBack我假设您的意思是来自您网页的ajax调用。这些是普通的HTTP调用,并像普通的回发一样携带您的浏览器会话cookie。因此,你的会议应该保持活力。

但是,在调试模式下,您的应用程序域将在15次动态编译后回收,如果使用InProc会话状态,您的会话将丢失。

您可以使用<compilation numRecompilesBeforeAppRestart="1000" />中的web.config元素在appdomain回收之前增加编译次数。

我还建议您使用SQLServer模式进行会话状态,因为SQL存储的会话将在appdomain recycleles / server重新启动/负载平衡的服务器切换等之后继续存在。