1

我将 Nineject 用于 .NET ioc 容器。我想使用工厂方法,但我不能。没有 .ToFactory 方法。

我为 .NET 3.0.1.10 添加了 Ninejct 的 Ninject.Extensions.Factory 扩展,并将 CastleCore 3.0 添加到项目中,然后我想调用 ToFactory 方法,但我没有看到它。

有,ToMethod,ToProvider 方法,但是没有 ToFactory

我试过这段代码:

public class Foo
{
    private IBarFactroy barFactroy;
    public Foo(IBarFactory barFactory)
    {
        this.barFactory = barFactory;
    }

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

public interface IBarFactory
{
    Bar CreateBar();
}

这样

kernel.Bind<IBarFactory>().ToFactory();

为什么我无法调用 ToFactory 方法?

我看到 NuGet 为 .net 安装了 ninject 3.0.2 prelease ninject

4

1 回答 1

3

您需要添加命名空间引用:

using Ninject.Extensions.Factory;
于 2013-05-30T11:10:50.837 回答