gpt4 book ai didi

dependency-injection - 有没有办法在使用 HttpSelfHostServer 运行的 Web Api 中添加 httpModule?

转载 作者:行者123 更新时间:2023-12-04 08:22:57 27 4
gpt4 key购买 nike

我有一个 MVC4 webapi Controller 。它没有无参数的构造函数。所以,我使用 Windsor 依赖解析器,在 System.Web.Http.WebHost 下工作时一切正常。但是,当我尝试使用 HttpSelfHostServer 时,我收到异常消息:

Looks like you forgot to register the http module Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule
To fix this add
<add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Windsor" />
to the <httpModules> section on your web.config.
If you plan running on IIS in Integrated Pipeline mode, you also need to add the module to the <modules> section under <system.webServer>.
Alternatively make sure you have Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 assembly in your GAC (it is installed by ASP.NET MVC3 or WebMatrix) and Windsor will be able to register the module automatically without having to add anything to the config file.
显然,windsor di 不能注册他的HttpModule。我尝试添加

<system.web>
<httpModules>
<add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Windsor" />
</httpModules>
</system.web>

在我的 app.config 中,运气不好。尝试使用 WebActivator 来使用 PreApplicationStart 方法也没有运气。有什么方法可以为自托管的 webapi 应用程序添加 httpModule 吗?

最佳答案

自托管时不能使用 HttpModules。它们是 ASP.NET 特定的功能。

关于dependency-injection - 有没有办法在使用 HttpSelfHostServer 运行的 Web Api 中添加 httpModule?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831932/

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