1
爲了參數的緣故,我想選擇一個基於配置值的特定綁定,假設我有兩個名爲Action1和Action2的具體類。目前我正在將Ninject內核傳入工廠,並根據此返回綁定類型。Ninject C# - 在讀取配置時在運行時獲取具體類型
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");
是否有可能對我來說,這個綁定,無需內核傳遞給工廠?
我也有能力重構工作流程,如果有人有任何建議。
聖雷莫您好,感謝回答。我不知道這對我來說是否可行(或者甚至是Ninject的可能性),因爲配置是在服務中檢索的複雜類型,綁定是在服務初始化時完成的,而不需要任何配置複雜類型的知識在服務棧中進一步檢索。我不認爲我想要的是可能的,我可能需要重新思考我的問題。 –