...对于下一个请求,是否会再次运行Application_Start方法?
是否依赖于ASP.NET版本,托管服务器版本和/或其他上下文?
我正在尝试确定在那里加载关键程序集是否是一件好事。例如,数据访问程序集对整个应用程序的运行至关重要。如果没有加载这样的程序集会使后续请求无效。
答案 0 :(得分:9)
每个Web应用程序只会触发一次Application_Start,因此在您的情况下,后续请求不会再次启动。
通常,我更喜欢在try-catch中的应用程序启动时放入一次启动代码,如果有异常,则设置全局错误标志。在每个BeginRequest中,将检查该标志,如果已设置,则会将用户重定向到自定义错误页面,指示该站点已关闭,请与管理员联系。