我已经将我的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.
似乎注册没有发生。区域项目未在主项目中引用
如何注册?
最有可能的是(没有看到您的项目是如何设置和初始化的,除了问题中提供的小代码片段)这是ASP的问题。. NET无法正确定位要解析的类型。
确保你已经在BuildManager中注册了你的插件程序集