当我更新Autofac.RegistrationExtensions.RegisterModule(Autofac.ContainerBuilder,MVC应用程序的最新版本时,我收到了一些错误,比如“方法找不到:'Void Autofac.Core.IModule‘”。
我的应用程序正在使用
安装Webapi2.2帮助页面后,我在Autofac中发现了安全问题,因此根据google的建议,我更新了Autofac的最新版本。
在更新了AutoFac MVC5和WebAPI版本之后,我在尝试使用RegisterModule不止一次时没有出错。请按以下方式查找我的代码
var builder =新的ContainerBuilder();
builder.RegisterModule(new ());
builder.RegisterModule(new ());
builder.Build();
我的配置文件如下
<?xml version="1.0" encoding="utf-8"?>
<packages xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<package id="Antlr" version="3.5.0.2" targetFramework="net45" xmlns="" />
<package id="Autofac" version="4.0.0-beta6-110" targetFramework="net45" xmlns="" />
<package id="Autofac.Mvc5" version="3.3.4" targetFramework="net45" xmlns="" />
<package id="Autofac.WebApi" version="3.1.0" targetFramework="net45" xmlns="" />
<package id="Autofac.WebApi2" version="3.4.0" targetFramework="net45" xmlns="" />
<package id="Codaxy.CodeReports" version="0.1.6.4" targetFramework="net45" xmlns="" />
<package id="Codaxy.CodeReports.Exporters.Html" version="0.1.3" targetFramework="net45" xmlns="" />
<package id="Codaxy.CodeReports.Exporters.Xlio" version="0.1.5.1" targetFramework="net45" xmlns="" />
<package id="Codaxy.Common" version="0.5.16.9" targetFramework="net45" xmlns="" />
<package id="Codaxy.Common.Localization" version="0.5.9.2" targetFramework="net45" xmlns="" />
<package id="Codaxy.Common.SqlServer" version="0.6.0.2" targetFramework="net45" xmlns="" />
<package id="Codaxy.Dextop" version="1.2.0.25" targetFramework="net45" xmlns="" />
<package id="Codaxy.Dextop.Core" version="1.2.0.40" targetFramework="net45" xmlns="" />
<package id="Codaxy.Dextop.Preprocessor" version="1.1.0.5" targetFramework="net45" xmlns="" />
<package id="Codaxy.Xlio" version="0.9.3.21" targetFramework="net45" xmlns="" />
<package id="EntityFramework" version="6.1.3" targetFramework="net45" xmlns="" />
<package id="Glimpse" version="1.8.6" targetFramework="net45" xmlns="" />
<package id="Glimpse.Ado" version="1.7.3" targetFramework="net45" xmlns="" />
<package id="Glimpse.AspNet" version="1.9.1" targetFramework="net45" xmlns="" />
<package id="Glimpse.EF6" version="1.6.5" targetFramework="net45" xmlns="" />
<package id="Glimpse.Mvc4" version="1.5.3" targetFramework="net45" xmlns="" />
<package id="HtmlTags" version="2.0.0.181" targetFramework="net45" xmlns="" />
<package id="Humanizer" version="1.25.4" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.Mvc" version="5.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.WebApi.HelpPage" version="5.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net45" xmlns="" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" xmlns="" />
<package id="Newtonsoft.Json" version="6.0.8" targetFramework="net45" xmlns="" />
<package id="SharpZipLib" version="0.86.0" targetFramework="net45" xmlns="" />
<package id="WebGrease" version="1.6.0" targetFramework="net45" xmlns="" />
</packages>我尝试了多种解决方案,但没有成功。你能把正确的解决办法递给我吗?
谢谢
发布于 2015-08-12 18:20:44
删除对Autofac.WebApi的引用。你只需要Autofac.WebApi2。我们已经有一段时间不支持Autofac.WebApi了,它只支持3.x版本和Web之前的版本。当Autofac.WebApi上的签名更改时,RegisterModule没有被更新。
我猜一切都进行得很顺利,直到您尝试在使用旧版本的Autofac.WebApi的模块中注册一些东西。
https://stackoverflow.com/questions/31949836
复制相似问题