【发布时间】:2011-07-05 21:39:40
【问题描述】:
我最近一直在尝试学习 IoC,根据以下代码有几个问题:
public class WarriorModule : NinjectModule
{
public override void Load()
{
Bind<IWeapon>().To<Sword>();
Bind<Samurai>().ToSelf();
}
}
我无法理解新的接口概念。之前我会创建一个接口比如IRunnable,实现函数void Run()。对于 IoC,我现在将接口视为仅映射到单个具体类的东西。假设,我如何将多个具体类映射到一个接口?我一直在阅读,您可以将多个接口映射到一个具体类,但不能反过来(除非这是上下文映射的来源入戏)。
假设接口只映射到单个对象,我应该什么时候创建一个接口而不是让一个对象绑定到自身?无论哪种方式,当映射时您都必须更改同一段代码更改正确吗?
编辑:我标记了我所做的答案,因为它对我个人有帮助。不过,这两个 cmets 都提供同样丰富的信息。
【问题讨论】:
标签: dependency-injection ioc-container ninject