2014-06-10 38 views
0

我使用iis在我的机器上启动ASP.NET MVC应用程序。 然后我打开iis转到应用程序池选项卡,选择我的应用程序的池并单击“回收”。 之后global.asax代码不会启动,直到我打开我的应用程序的任何页面。Global.asax OnApplicationStarted在刷新应用程序池后不启动

我认为Global.asax应该重新启动应用程序池,但它为什么不会发生?

+1

这相信这是预期的。应用程序只有在获取请求后才会启动。它也会根据您的应用程序池的非活动超时设置关闭自身,并且只有在发出请求后才会启动(因此ApplicationStarted将再次被触发)。 – JuhaKangas

回答

0

Juha几乎给出了答案,我可以证实答案是正确的。

仅当第一个请求进入ASP.NET时,Application_Start事件才会运行。如果您希望它在第一个用户向该站点发出请求之前运行,则可以使用IIS Application Warmup模块,该模块可以配置为在启动后立即向站点发出一些请求。这通常用于可能需要一段时间进行预热的大型应用程序。

相关问题