相关疑难解决方法(0)

使用IoC时,我对界面抽象感到困惑

我最近一直在尝试学习IoC,并根据以下代码提出几个问题:

public class WarriorModule : NinjectModule 
{
    public override void Load() 
    {
        Bind<IWeapon>().To<Sword>();
        Bind<Samurai>().ToSelf();
    }
}
Run Code Online (Sandbox Code Playgroud)

我在掌握接口的新概念时遇到了麻烦.在我创建一个接口之前,例如IRunnable,实现该功能void Run().在IoC中,我现在将界面视为仅映射到单个具体类的东西.假设,我如何将多个具体类映射到接口? 我一直在阅读你可以将多个接口映射到一个具体的类,但不是相反(除非这是上下文映射发挥作用的地方).

假设接口只映射到单个对象,何时应该创建接口而不是让对象绑定到自身? 无论哪种方式,当映射更改正确时,您将不得不更改同一段代码?


编辑:我标记了我做的答案,因为它帮助了我个人.这两条评论同样具有丰富的信息.

dependency-injection ninject ioc-container

12
推荐指数
2
解决办法
1600
查看次数