C#学习教程:PreApplicationStartMethod实际上何时被触发运行?分享


PreApplicationStartMethod实际上何时被触发运行?

使用WebActivator PreApplicationStart方法时,实际触发绑定到此方法的方法是什么? 当IIS7启动App Pool时? 当第一个请求发送到网络服务器? 别的什么? 如果您有答案,还可以提供您获取此信息的位置的参考吗?

在IIS 7.5中是否有任何变化?

WebActivator PreApplicationStart实际上依赖于ASP.NET PreApplicationStartMethodAttribute (请参阅此链接以了解Web激活器的工作原理)。

PreApplicationStartMethodAttribute在ASP.NET运行时启动应用程序时运行,并且即使在app_start事件被触发之前代码也在管道中提前运行。 因此,为了回答您的问题,当第一次请求Web服务器时(这将反过来启动应用程序启动)将触发。

请注意,触发器与ASP.NET应用程序启动相关,而与应用程序池无关。 您的应用程序池可能正在运行,因为某些其他应用程序(可能是非ASP.NET应用程序)但是当第一个请求来自ASP.NET应用程序时,此触发器将发生(对于特定应用程序),因为应用程序已启动。

如果您使用自动启动function,则IIS将在您的应用池循环中重新启动您的应用程序,从而触发PreApplicationStart

@ VinayC答案的一小部分补充:如果您在PreApplicationStartMehod中添加断点并调试Web应用程序,您可能会看到每次请求都会调用它。 通过写入PreApplicationStartMethod中的日志文件,我很容易确认这不是通常的行为。 如果未附加到调试器,则此方法不会在每个请求上运行。

上述就是C#学习教程:PreApplicationStartMethod实际上何时被触发运行?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031767.html

发表评论

邮箱地址不会被公开。 必填项已用*标注