在IIS7应用程序生命周期中查看.net之后:
http://msdn.microsoft.com/en-us/library/ms178473.aspx
为了获得最佳性能,我希望在创建HttpContext对象之后但在HttpApplication之前找到一种方法来启动我的代码。 (在加载HttpApplication类之后,在使用HTTP模块的构造函数触发任何事件之前,很容易运行代码:
public class AuthModule : IHttpModule
{
public AuthModule()
{
HttpContext.Current.Response.Write("hello world");
HttpContext.Current.Response.End();
}
#region IHttpModule Members
public void Dispose()
{ }
public void Init(HttpApplication context)
{ }
#endregion
}
我知道我无法访问User对象,但我不需要它。
答案 0 :(得分:1)
在创建HttpApplication实例之前,您无法确定代码是否已启动,因为这些实例可能会被重用。
此外,在此阶段运行代码超出了管道的范围。它应该让你问自己这是否真的是一件明智的事情。
这与性能有什么关系?你真的认为创建一个HttpApplication实例的时间会在你的表现中注册吗?
退一步重新考虑。
答案 1 :(得分:0)
查看life-cycle events on MSDN。如果您想要比普通页面事件更早的内容,可以考虑使用其中一个事件。