我是使用依赖注入的新手,并且正在尝试使用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();
}


我们可以使用创建栏

       var bar = this.barFactory.CreateBar();


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

最佳答案

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

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

10-12 17:19