2013-01-20 70 views
2

我分开我MVC4应用到的区域,但使用不同的项目在每一个模块项目(区域)我有一个模块注册控制器autofac MVC地区

protected override void Load(ContainerBuilder builder) 
     { 
      var assembly = Assembly.GetExecutingAssembly(); 

      builder.RegisterControllers(assembly); 
      builder.RegisterModelBinders(assembly); 
      builder.RegisterModelBinderProvider(); 
      builder.RegisterFilterProvider(); 
     } 

我有一个控制器

public class SomeController : Controller { 
     public SomeController (IDependency dependency){} 
} 

,并在主体工程全球我有这样的:

builder.RegisterAssemblyModules(); 

后来,当我运行此我得到这个错误:

No parameterless constructor provided. 

似乎注册没有发生。该项目未在主项目中引用

我该如何注册?

回答

2

最有可能的是(没有看到你的项目是如何设置和初始化的,除了问题中提供的小代码片段之外),这是ASP.NET无法正确定位要解决的类型的问题。

确保你的插件程序集已经在BuildManager中注册了。

This blog article should help you get where you need to go.