0
如何在我的一個Ninject模塊中加載引用的模塊。舉個例子,我有業務層模塊,這取決於數據訪問模塊,但目前我必須做這樣的事情:Ninject模塊鏈
Business.Module {
class Module{
public void Load()
{
//add bindings
}
}
}
DataAccess.Module {
class Module{
public void Load()
{
//add repositories bindings
}
}
}
,然後在應用程序中,我必須使用兩個:
class ControllerFactory
{
NinjectKernel kernel = new NinjectKernel(
new Business.Module(),
new DataAccess.Module())
}
但我的目標是分離應用程序和數據層,所以應用程序。必須僅涉及業務層,其涉及數據層。
我知道如何使用Unity容器來完成。但是Ninject呢?
你在做什麼是正確的。模塊只能從組合根中引用並使用。這意味着您不應該從業務模塊中引用DataAccess。組成root =你創建內核的地方。它應儘可能接近應用程序的啓動位置。 – BatteryBackupUnit
另請參閱Mark Seeman對[Composition Root]的描述(http://blog.ploeh.dk/2011/07/28/CompositionRoot/) – BatteryBackupUnit