我正在尝试使用WindsorControllerFactory
(最新的1.0.0.916版本)和新的Windsor Castle 2.0(同样是最新版本)。但是我得到了
启动Web应用程序时出现无法加载文件或程序集 'Castle.Windsor,Version = 1.0.3.0 ......
错误。无论如何,在写这个问题的过程中,我设法通过将这个块添加到Web.config文件来说服Web应用程序绑定到新的Castle的dll:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Castle.Windsor" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
<bindingRedirect oldVersion="1.0.3.0" newVersion="2.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Castle.Core" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
<bindingRedirect oldVersion="1.0.3.0" newVersion="1.1.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Castle.MicroKernel" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
<bindingRedirect oldVersion="1.0.3.0" newVersion="2.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
所以我想我回答了自己的问题,但是我想与任何有同样问题的人分享这个问题。或者有更好的方法(除了自己编译MVCContrib资源)?
答案 0 :(得分:0)
我也想自己建立MvcContrib,并将其源代码与我们的项目代码一起使用。
答案 1 :(得分:0)
我们使用相同的方法。最后一个可用的MvcContrib(v.2.0.96.0)存在一个问题。它使用与最新版本的Castel.Windsor(2.5.1.0)不兼容的Castel.Windsor v.2.1.0.0:AddComponentLifeStyle已过时。因此,您必须更改相关的MvcContrib代码。
顺便说一句,您可以在不重建的情况下签署MvcContrib dll,例如使用此工具:http://signer.codeplex.com/