在IIS中重新启动应用程序池时立即运行Application_Start

时间:2012-05-16 17:05:18

标签: c# .net iis iis-7

我们正在应用程序的application_start阶段进行一些缓存操作。因此,当应用程序池重新启动时,所有缓存都将消失。是否可以在应用程序池重新启动时触发application_start,或者您有更好的想法来解决此问题?

2 个答案:

答案 0 :(得分:5)

您可以使用Application Initialization for IIS 7.5,它借用IIS8中的功能,或者如果您使用的是ASP.NET 4.0 +,则application auto start

对于ASP.NET 2.0 i 3.5,有一个IMO有点hackish解决方案,您可以在事件日志中记录应用程序池回收,然后在事件日志中设置将在该事件上执行的任务,这里是{{3} }

答案 1 :(得分:0)

仅在第一次请求时调用Application_Start。如果没有请求,我不确定缓存某些内容是个好主意。

我会在第一次请求时加载缓存 您的CacheManager可以决定是否需要自动加载它的数据。

您是否担心第一个请求会变慢?