Application_End global.asax

时间:2008-11-13 21:16:31

标签: asp.net iis global-asax lifecycle application-end

在应用程序的生命周期中触发Application_End时,有人可以告诉我吗?当所有会话结束时,Application_End会自动触发吗? +还有其他原因可以触发Application_End吗?

3 个答案:

答案 0 :(得分:38)

{IIS}池被回收或应用程序本身被卸载时,application_end事件主要触发。另外需要注意的是,对依赖文件(例如web.config)的更改将导致应用程序自行重新加载,这将导致application_end事件在关闭时自动触发。

需要注意的是,我发现的最后一个用户会话超时的应用程序结束事件的唯一实例是2001年的一些旧文档。我不确定该标准是否仍适用。

答案 1 :(得分:12)

当ASP.NET辅助进程终止时,将触发Application_End。这通常发生在可配置的不活动时间段或IIS(或相关应用程序池)关闭或重新启动后。

在IIS 6.0中运行时,可以通过Internet服务管理器中的应用程序池设置(“性能”选项卡上的“空闲超时”)配置不活动超时。在早期版本的IIS中,可以在machine.config中设置(processModel下的idleTimeout)。

答案 2 :(得分:0)

就我而言,Aapplication Pool 正在被回收,因为属性空闲超时(分钟)

该属性的默认值为 20(分钟)

enter image description here