我的问题实在是一个老问题的重复张贴在这里: Ninject 2.2 multiple bindingsNinject 3多个绑定
似乎有人去处理这个早在2011年有谁知道是否有某种方式来关闭Ninject的这种警告?或者其他一些解决方法?
编辑
针对@BatteryBackupUnit,这里是我的确切问题:
我有多个库......在我的核心库,我做这样的事情:
- 查找主机应用程序引用的所有组件(包括主机)
- 查找从所有这些组合中继承的所有类型
IDependency
所在。 - 自动注册所有那些瞬态
的然后从另一个库(其可以或可以不被所述主机应用程序中引用),我有这:
Kernel.Bind<IDbContextFactory>().To<DbContextFactory>().InSingletonScope();
这里IDbContextFactory
也是一种IDependency
,所以它已经加载了核心库,现在我注册它在这里,但有一个不同的范围(单身人士)。我知道这在Autofac中是没有问题的,但是Ninject向我提供了关于已经注册的错误信息。
理想情况下是最好只覆盖以前的任何注册......“级联式”(缺乏一个更好的短语)..
据我所知,你不能做“覆盖注册级联风格” - 至少不容易。 但是我想知道'IDependency'的价值是什么。这个接口用于什么?我怀疑你可以通过使用不同的设计轻松解决挑战 - 而不会使整个软件复杂化。 – BatteryBackupUnit