我理解如何按照here解释配置装饰。但我看到一个问题。在我的情况下,我想避免存储库的依赖。
Bind<IRepository>().To<Repository>().WhenInjectedInto<CachedRopsitory>();
Bind<IRepository>().To<CachedRepository>().WhenInjectedInto<CachedLoggedRepository>();
Bind<IRepository>().To<CachedLoggedRepository>();
详细说明,我有 UI , BL (业务层), DL (数据层)。 UI和DL参考BL。上面的代码位于UI的组合根目录中。 IRepository 位于BL中,存储库属于数据层。我不想在UI中引用DL。那是我不想让DL成为UI的依赖。所以我们在这种情况下使用的代码如下使用约定优于配置。
m_Kernel.Bind(x => x.FromAssembliesMatching("Northwind.*.dll").SelectAllClasses().
BindAllInterfaces());
所以问题很简单,我如何使用约定优于配置的条件绑定?