0
我有三個將使用DI的項目。我的項目是一個ASP.NET MVC 3網站。我從nuget安裝了ninject MVC軟件包,添加了我的引導程序。我註冊了我的綁定。ASP.NET MVC中的Ninject注入問題3
NinjectMVC3.cs
private static void RegisterServices(IKernel kernel)
{
kernel.Bind<IUserService>().To<UserService>();
}
我有一個包含UserService和IUserService一個單獨的項目。在那個項目中,我也有一個單獨的工廠類來創建我的服務。
public class ServiceFactory : BaseFactory<ServiceFactory>
{
[Inject]
public IUserService UserService { get; set; }
}
當我調用ServiceFactory.Instance.UserService時,上述情況總是爲空嗎?
嗯,我切換到做此鏈接http://www.shahnawazk.com/2010/12/dependency-injection-in-aspnet-mvc-3.html和我還是我得到一個null。內核設置被擊中。另外我可能在一個控制器上有多個服務,並且會討厭在裏面有5或6個參數。我寧願做財產注入。 –
我有點困惑。該鏈接無處推薦使用單例模式。另外,如果你的構造函數有很多依賴關係,這很可能不是構造函數注入的問題,而是你沒有正確地遵循單一責任原則。 –
此外,我成功地使用https://github.com/ninject/ninject.web.mvc/wiki/MVC3作爲Ninject的MVC引導程序 –