Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net IIS7&;Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule注册问题_Asp.net_Asp.net Mvc_Iis 7_Web Config_Castle Windsor - Fatal编程技术网

Asp.net IIS7&;Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule注册问题

Asp.net IIS7&;Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule注册问题,asp.net,asp.net-mvc,iis-7,web-config,castle-windsor,Asp.net,Asp.net Mvc,Iis 7,Web Config,Castle Windsor,更新: 在Windsor 2.5中,程序集名称为Castle.Windsor而不是Castle.MicroKernel 我正在尝试将ASP.NET MVC应用程序部署到IIS7,但出现以下错误: 看起来您忘记注册http模块了 Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule将“”添加到 web.config 我的httpModules包含: <httpModules> <add name="PerReq

更新:

在Windsor 2.5中,程序集名称为
Castle.Windsor
而不是
Castle.MicroKernel


我正在尝试将ASP.NET MVC应用程序部署到IIS7,但出现以下错误:

看起来您忘记注册http模块了 Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule将“”添加到 web.config

我的httpModules包含:

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

system.webServer处理程序部分包含

<handlers>
  <remove name="PerRequestLifestyle"/>
  <add name="PerRequestLifestyle" preCondition="managedHandler" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Microkernel" verb="*" path="*.castle" />
</handlers>

我添加了
verb=“*”path=“*.castle”
部分,因为当它们丢失时,我得到了错误。不确定它们的值是否正确


有人知道这里有什么问题吗?

您可以通过在配置/system.webServer/modules中注册HTTP模块来解决问题,而不是配置/system.web/httpModules

花了我一些时间来找到解决方案,但我所要做的就是更新在web.config

使用Castle.Core和Windsor 2.5.1。。。

我的问题是,我在
应用程序启动中引导容器,模块在ASP.NET中未初始化,因此当您尝试注册/使用
PerWebRequest
时,它会抛出该异常,因为它检测到模块未初始化

我最终使用了from,它提供了
HybridPerWebRequestTransient
生活方式,如果此时没有初始化,它将使用Transient生活方式

您只需下载库(因为zip是可以的)打开解决方案并编译它,获取生成的DLL并在项目中引用它

如果您使用的是Castle.Windsor版本3.0以上,则必须删除对它的当前引用,并添加对您正在使用的版本的引用(我使用的是3.1,没有任何问题)


这是使用生活方式的代码:
.lifesture.HybridPerWebRequestTransient()

PerWebRequestLifestyleModule是一个模块,而不是处理程序。从处理程序部分删除它。尝试在模块声明中包含版本、区域性和PublicKeyToken。谢谢,我删除了模块声明。版本、区域性和PublicKeyToken不是必需的。我还必须添加一个处理程序。还必须创建目录“C:\TempImageFiles”才能使其工作。那么它解决了您的问题吗?ChartImageHandler和温莎有什么关系?可能是