我想知道在什么情况下我应该将应用程序初始化代码放在我的Global.asax
文件中的Application_Start()
和Init()
中?
两者之间的区别在我看来并不是很明显,除了先调用Application_start
,然后调用Init()
。
到目前为止,我能找到的唯一真正的指针是IHttpModule
只有一个Init()
方法,所以如果我正在做的事情在某个时候可能更适合实现IHttpModule
,我应该使用Global.asax
的Init()
方法,如果没有其他一致性的话。
发布于 2009-04-06 11:28:48
Application_Start和Application_End方法是不表示HttpApplication事件的特殊方法。ASP.NET 在应用程序域的生命周期内调用它们一次,而不是为每个HttpApplication实例调用一次。
Init:
在创建所有模块之后,
为HttpApplication类的每个实例调用一次。
更新:如果你需要确保某个代码在应用程序中只被调用一次。生命周期,Application_Start是更好的解决方案。示例:配置log4net?
发布于 2009-06-02 07:13:35
是
它们之间存在差异。Application_Start()事件只调用一次,而每次创建应用程序实例时都会调用Init()方法。
https://stackoverflow.com/questions/720969
复制相似问题