我想根据配置值选择一个特定的绑定,为了参数,假设我有两个具体的类,称为 Action1 和 Action2。目前,我正在将 Ninject 内核传递给工厂,并根据它返回绑定类型。
public class ActionFactory: IActionFactory
{
public IAction GetAction(IKernel kernel, string actionName)
{
return kernel.Get<IAction>(actionName);
}
}
我在 Ninject 模块中绑定动作,如下所示:
Bind<IAction>().To<Action1>().Named("Action1");
Bind<IAction>().To<Action2>().Named("Action2");
我可以绑定它而不必将内核传递给工厂吗?
如果有人有任何建议,我也有能力重构工作流程。