2009-02-22 9 views
7

特定のHttpModuleがロードされているかどうかをプログラムで確認する方法を見つけようとしています。私がしようとしている:HttpModuleがロードされているかどうかを検出する

bool ismodulepresent = false; 
foreach(HttpModuleAction module in ((HttpModulesSection)ConfigurationManager.GetSection("system.web/httpModules")).Modules) 
{ 
    if(module.Type == typeof(MyModule).FullName) 
    { 
     ismodulepresent = true; 
     break; 
    } 
} 

しかし、唯一のIIS5.1 <httpModules>セクションではなく、新しい<system.webServer>セクションのために働くことを。

両方のセクションをチェックするだけではなく、これを行うより良い方法があれば、どんな考えですか?

答えて

12
HttpModuleCollection modules = HttpContext.Current.ApplicationInstance.Modules; 
foreach (string moduleKey in modules.Keys) 
{ 
    IHttpModule module = modules[moduleKey]; 
    // Do your check here 
} 
+0

嬉しい、ありがとう! –

関連する問題