我創建使用MVC 4最佳實踐的依賴注入
我想用Ninject
設置依賴注入在ASP.net一個新的項目。但在開始設置依賴注入的最佳實踐之前,我需要做什麼?
目前我在webproject中有一個binder類設置,它將引用解決方案中的數據項目。
的粘合劑類,如下所示:
Public static class Binder
{
static Ninject.IKernel _kernel;
static Binder()
{
_kernel = new Ninject.StandardKernel();
_kernel.Bind<IConfig>().To<AppSettingsConfig>();
_kernel.Bind<IDocuments>().To<DocumentsClass.Documents>();
}
public static T GetImplementation<T>()
{
return _kernel.Get<T>();
}
}
然後我的控制器內我使用GetImplementation方法來使用的確切需要依賴性,而不是所有註冊在應用程序啓動。從控制器
示例代碼:
Public ActionResult Get (int id)
{
var repository = Binder.GetImplementation<IDocuments>();
// do some stuff with the repository here
}
不知道這將是一個很好的方法嗎?任何建議都會很好。
一些代碼,將是一件好事呢? – BenjaminPaul
@Wiktors下面的答案是要走的路。儘可能多地使用構造函數注入。如果出於某種原因,您無法設置完整的依賴關係鏈,請僅使用SL反模式。 –