我已经将我的MVC4应用程序分成了区域但是使用单独的项目在每个模块项目(区域)中我有一个模块来注册控制器
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.
似乎注册没有发生。区域项目未在主项目中引用
我如何注册?
答案 0 :(得分:2)
最有可能的是(没有看到你的项目是如何设置和初始化的,除了问题中提供的微小代码片段),这是ASP.NET无法正确定位要解析的类型的问题。
确保您已使用BuildManager注册了插件程序集。