2016-10-05 11 views
0

Webを1日以上検索しましたが、必要なものが見つかりませんでした。アプリケーションプールの開始時にASP.NET Webアプリケーションを初期化する

私はHttpHandlersとHttpModulesでIIS Webアプリケーションを開発しています。最初の実行時にアプリケーションを初期化する必要があります(設定を適用する)。しかし、私は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(){}; 

      } 
     } 
    } 
} 

そしてPreApplicationStartMethodに関する詳しい情報は、あなたのAssemblyInfo.cs

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

に属性を追加します。https://msdn.microsoft.com/en-us/library/system.web.preapplicationstartmethodattribute

関連する問題