【发布时间】:2015-08-29 09:21:03
【问题描述】:
我已将 Autofac.Mvc 从版本 3.2.1 更新到 3.3.0,我还更新了所有其他软件包,包括 EF、MVC、WebActivatorEx 等,更新后它在我的控制器上出现错误
没有为此对象定义无参数构造函数
我在初始化类中放了一个断点,我发现它甚至没有达到断点。我的项目中有一个单独的依赖解析层,这是初始化类的代码
[assembly: WebActivatorEx.PreApplicationStartMethod(typeof(IocConfig), "RegisterDependencies")]
namespace MyApp.Bootstrapper
{
public class IocConfig
{
public static void RegisterDependencies()
{
var builder = new ContainerBuilder();
const string nameOrConnectionString = "name=AppContext";
builder.RegisterControllers(typeof(MvcApplication).Assembly);
builder.RegisterModule<AutofacWebTypesModule>();
builder.RegisterGeneric(typeof(EntityRepository<>)).As(typeof(IRepository<>)).InstancePerHttpRequest();
builder.RegisterGeneric(typeof(Service<>)).As(typeof(IService<>)).InstancePerHttpRequest();
builder.RegisterType(typeof(UnitOfWork)).As(typeof(IUnitOfWork)).InstancePerHttpRequest();
builder.Register<IEntitiesContext>(b =>
{
var logger = b.Resolve<ILogger>();
var context = new AspnetIdentityWithOnionContext(nameOrConnectionString, logger);
return context;
}).InstancePerHttpRequest();
builder.Register(b => NLogLogger.Instance).SingleInstance();
builder.RegisterModule(new IdentityModule());
var container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
}
}
}
请指导我。
【问题讨论】:
-
这应该合并成stackoverflow.com/questions/30805382/…。都是同一个问题。
标签: asp.net-mvc asp.net-mvc-4 autofac onion-architecture