【发布时间】:2011-02-16 17:33:35
【问题描述】:
最近我转向 MVC 3 和 Ninject 2。在大部分代码中,我使用构造函数注入,但也有一些地方,我不得不使用 Inject 属性。 Ninject 2 注册了自己的IDepencyResolver 接口。我不喜欢 DependencyResolver 类成为 System.Web.Mvc 命名空间的一部分,因为它的功能与 MVC 并没有真正严格相关,但是现在,当它在那里时,我可以做
public SomeClass
{
public IUserService UserService { get; set; }
public SomeClass()
{
UserService = DependencyResolver.Current.GetService<IUserService>();
而不是
public SomeClass
{
[Inject]
public IUserService UserService { get; set; }
所以我不必在我的类中引用Ninject 命名空间。 DependencyResolver应该这样用吗?
【问题讨论】:
标签: asp.net-mvc dependency-injection ninject ninject-2 ninject.web.mvc