gpt4 book ai didi

asp.net-mvc-4 - .NET 4.5 中未调用 HttpModule

转载 作者:行者123 更新时间:2023-12-03 11:55:53 24 4
gpt4 key购买 nike

刚刚花了很多时间筛选关于这个问题的相互矛盾的建议,并认为我会发布我的解决方案。

我的环境是 .NET 4.5,Visual Studio 2012,在 MVC 4 应用程序上工作。我像过去一样创建了一个 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

高温高压

最佳答案

<system.web>适用于 IIS 6 及更低版本(包括 Cassini),<system.webServer>适用于 IIS 7 及更高版本。我通常把两个都放进去——以防万一——然后把这个节点添加到<system.webServer>。所以它不会因为冗余而烦恼:

<validation validateIntegratedModeConfiguration="false" />

关于asp.net-mvc-4 - .NET 4.5 中未调用 HttpModule,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15768203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com