c# - 使用 ninject.extensions.factory - 根类中会发生什么?

标签 c# dependency-injection ninject

我是使用依赖注入(inject)的新手,并且正在尝试 Ninject。在我探索Ninject Factory的功能时,有件事让我很困惑。

来自https://github.com/ninject/ninject.extensions.factory/wiki/Factory-interface ,

public class Foo
{
    readonly IBarFactory barFactory;

    public Foo(IBarFactory barFactory)
    {
        this.barFactory = barFactory;
    }

    public void Do()
    {
        var bar = this.barFactory.CreateBar();
        ...
    }
}

public interface IBarFactory
{
    Bar CreateBar();
}

我们可以使用创建 Bar

       var bar = this.barFactory.CreateBar();

但是我们应该采取什么方法来创建 Foo 的实例呢?

最佳答案

您需要执行一个 kernel.Get<>()composition root您的应用程序。

关于c# - 使用 ninject.extensions.factory - 根类中会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11027108/

相关文章:

c# - 如何在 AlternateView 上设置编码

c# - 不可变类型可以改变它的内部状态吗?

c# - 将上传的 xml 文件加载到 XmlDocument 对象中

c# - 依赖注入(inject)导致工厂激增?

c# - 扩展方法中需要工厂类

java - Guice DI 绑定(bind),无需添加 Guice 注解

asp.net-mvc-3 - 使用 PetaPoco 实现存储库模式

c# - 将 DataSource 属性添加到自定义 WinForms 控件

c# - IoC、UnitOfWork 与 Ninject 和 Entity Framework

asp.net-mvc-3 - 具有 ninject 的插件架构 - 将类和 Controller 实例从插件程序集加载到主 MVC 项目