Global.asax继承了HttpApplication类。但是HttpApplication不包含Global.asax的所有事件。那么其他事件在哪里出现?它们必须从某个地方继承。它们的来源是什么?
答案 0 :(得分:0)
他们不是从任何地方继承的。他们通过a convention
与Asp.Net管道连接起来在应用程序生命周期中,应用程序会引发您可以处理的事件,并调用您可以覆盖的特定方法。要处理应用程序事件或方法,可以在应用程序的根目录中创建名为Global.asax的文件。
...
ASP.NET使用命名约定应用程序 _event
自动将应用程序事件绑定到Global.asax文件中的处理程序
最后,这个模型是可扩展的:
如果您向应用程序添加模块,模块本身可以引发事件。应用程序可以使用约定 modulename_eventname 在Global.asax文件中订阅这些事件。
这就是为什么你可以得到例如此文件中的会话相关事件也是,例如Session_Start
。