この問題に関する矛盾したアドバイスをふるいにかけるのに多くの時間を費やしたので、解決策を投稿すると思いました。
私の環境は、MVC 4 アプリケーションで動作する .NET 4.5、Visual Studio 2012 です。過去に行ったように Http モジュールを作成し、次のように Web.config に追加しました。
<configuration>
<system.web>
<httpModules>
<add name="MyModule" type="Services.MyModule, Services" />
</httpModules>
</system.web>
</configuration>
ただし、アプリケーションはモジュールの Init() を呼び出しませんでした。最終的に、次のように、モジュールを代わりに 内<system.webServer>
に配置し、要素の名前<modules>
を の代わりに指定するというアドバイスを見つけまし<httpModules>
た。
<configuration>
<system.webServer>
<modules>
<add name="MyModule" type="MyModule" type="Services.MyModule, Services" />
</modules>
</system.webServer>
</configuration>
アプリケーションを再実行すると、期待どおりに Init() が呼び出されました。FWIW、方向性のあるページはこちらです: http://msdn.microsoft.com/en-us/library/ms227673.aspx
HTH