2016-10-05 32 views
0

我在网上搜索了一天,但没有找到任何需要的东西。在应用程序池启动时初始化ASP.NET Web应用程序

我正在开发一个IIS Web应用程序与HttpHandlers和HttpModules。我需要初次运行应用程序(应用配置)。但我不想使用global.asax.cs,因为我不希望在其文件夹中存在global.asax文件的实现(最多是web.config)。

如何在应用程序池初始化时运行一些代码?

回答

1

您可以使用程序集级属性PreApplicationStartMethodAttribute让您的启动代码在ASP.NET管道中尽早运行。

namespace MyWebService 
{ 
    public class MyHttpHandler: IHttpHandler, IDisposable 
    { 

      public static void StartUp() 
      { 
       //Application Startup Code; 
      } 

      public void ProcessRequest(HttpContext context) 
      { 
        //Do Something 
      } 

      public bool IsReusable { get; private set; } 

      public void Dispose(){}; 

      } 
     } 
    } 
} 

和属性添加到您的AssemblyInfo.cs

[assembly: PreApplicationStartMethod(typeof(MyWebService.MyHttpHandler), "StartUp")] 

欲了解更多信息有关PreApplicationStartMethod:https://msdn.microsoft.com/en-us/library/system.web.preapplicationstartmethodattribute

相关问题