我使用MVC 4中提供的两种类型的控制器:System.Web.Mvc.Controller和System.Web.Http.ApiController。我需要能够使用Unity将依赖项注入控制器。
对于我使用Unity.WebApi的ApiControllers: GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(_container);
对于控制器,我尝试使用我使用Nuget添加的Unity.Mvc3: DependencyResolver.SetResolver(new Unity.Mvc3.UnityDependencyResolver(_container));
但是,我收到运行时错误: 无法加载文件或程序集&System; Web.Mvc,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。系统找不到指定的文件。
有没有人知道适用于这种情况的解决方案? 感谢
答案 0 :(得分:0)
在web.config中添加绑定重定向:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>