gpt4 book ai didi

Ninject 绑定(bind)所有工厂接口(interface)

转载 作者:行者123 更新时间:2023-12-05 00:34:16 25 4
gpt4 key购买 nike

有没有一种简单的方法可以使用 Ninject 将所有 Factory 接口(interface)绑定(bind)到 ToFactory() 扩展方法?

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();
}

对于上面的代码,我可以使用:
kernel.Bind<IBarFactory>().ToFactory();

如果我有 10 或 20 个需要绑定(bind)的 IFactory 接口(interface),我会怎么做?

最佳答案

是的,使用约定:https://github.com/ninject/ninject.extensions.conventions

this.Bind(x => x.From_UseSomeOverloadToSpecifyTheAssemblies()
.SelectAllInterfaces().EndingWith("Factory")
.BindToFactory();

关于Ninject 绑定(bind)所有工厂接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10941399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com