我想检测ASP.NET应用程序何时会由于修改web.config文件或手动回收IIS应用程序池而发生垃圾回收。
最初,我认为ASP.NET的Application_End方法可以实现,因此尝试了以下操作:
protected void Application_End(object sender, EventArgs e)
{
File.AppendAllText("log.txt", DateTime.Now + "\n");
}
文件是在第一次更改 web.config 文件时创建的,但后续更改并没有触发事件。同样,在 IIS 中进行测试时,第一次手动应用程序池回收会创建文件,但稍后的操作则不会 - 就好像 Application_End 事件只会触发一次。
我该如何检测每次池/应用程序回收?