使用 StructureMap 进行依赖注入...我做错了什么?
我有一个简单的 MVC3 Web 应用程序。我使用 StructureMap 作为依赖注入。
它与我的 HomeController 配合得很好,但是当我转到第二个控制器时,我遇到了这个错误: MissingMethodException:没有零参数构造函数。
我遵循了教程中找到的每一个步骤......
谢谢。
这是代码:
public class HomeController : AuthorizedController
{
IRepository<User> _repository;
public HomeController(IRepository<User> repository)
{
_repository = repository;
}
}
public class AccountController : AuthorizedController
{
private readonly IRepository<User> _repository;
public AccountController(IRepository<User> repository)
{
_repository = repository;
}
}
我使用这个简单的注入:
For<IRepository<User>>().Use<UserRepository>();
I have a simple MVC3 Web application. I use structureMap as a dependency Injection.
It works fine with my HomeController, but when I go to a second Controller I have thi error:
MissingMethodException : No zero parameters constructor.
I followed every step I found in tutorials...
Thx.
Here's the code :
public class HomeController : AuthorizedController
{
IRepository<User> _repository;
public HomeController(IRepository<User> repository)
{
_repository = repository;
}
}
public class AccountController : AuthorizedController
{
private readonly IRepository<User> _repository;
public AccountController(IRepository<User> repository)
{
_repository = repository;
}
}
And I use this simple injection:
For<IRepository<User>>().Use<UserRepository>();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你确定它可以与 HomeController 一起使用吗?如果第二个控制器有错误,那么 HomeController 应该出现错误吗?
确保您的基本控制器 AuthorizedController 具有无参数公共构造函数
如果您没有为类定义构造函数,则会创建无参数构造函数。但是,如果定义带参数的构造函数,则不会创建无参数构造函数。
Are u sure it is working with HomeController? if you have error for second controllor then error should be present for HomeController?
Make sure that your base controller AuthorizedController has a parameterless public constructor
If you do not define a constructor for a class, a parameterless constructor will be created. However, if you define a constructor with parameters, no parameterless constructor will be created.