ASP.NETAjax应用程序中的强制会话超时

ASP.NETAjax应用程序中的强制会话超时,asp.net,ajax,asmx,Asp.net,Ajax,Asmx,我有一个大的1页ASP.Net应用程序。这个应用程序的大部分都是使用.NET3.5从以前使用.NET2.0的版本完全重写的。因此,该版本的设计者决定将整个页面放在更新面板中(叹气)。似乎这个更新面板唯一的优点是它允许在会话超时时(约30分钟)重定向到超时页面 我的团队在这个页面的一个选项卡中实现了一个新的部分,该选项卡使用ASP.NETAjax来访问ASMXWeb服务(这将很快移动到WCFScriptService)。这里的所有调用都是通过调用ASP.NETAjax JavaScript代理的自

我有一个大的1页ASP.Net应用程序。这个应用程序的大部分都是使用.NET3.5从以前使用.NET2.0的版本完全重写的。因此,该版本的设计者决定将整个页面放在更新面板中(叹气)。似乎这个更新面板唯一的优点是它允许在会话超时时(约30分钟)重定向到超时页面

我的团队在这个页面的一个选项卡中实现了一个新的部分,该选项卡使用ASP.NETAjax来访问ASMXWeb服务(这将很快移动到WCFScriptService)。这里的所有调用都是通过调用ASP.NETAjax JavaScript代理的自定义JavaScript完成的

我的问题是,如果发生部分回发,页面的其余部分将超时,但这些web服务调用仍在进行


我正在寻找一种方法,使我的新功能能够与应用程序的其余部分同时超时。

如果web应用程序应该控制会话,它必须提供一种查询方法。这可以通过一些ping机制来实现,比如IsTheSessionStillUp,它将响应yes或no。一个简单的aspx页面可以做到这一点。然后,所有外部服务都需要查询状态,如果主web应用程序会话超时,则还需要强制服务超时。这可以在服务代理中实现为发出服务调用之前的ping调用