【发布时间】:2014-01-22 15:52:26
【问题描述】:
为什么我不能在 Ninect 中执行以下操作?
Kernel.Bind<IPresenter>.To<DefaultPresenter>();
Kernel.Bind<IPresenter>.To<DashboardPresenter>();
Kernel.Bind<IPresenter>.To<HeartRatePresenter>();
Kernel.Bind<IPresenter>.To<GPSPresenter>();
4 个实现中的每一个都有一个不同的构造函数,期望不同的类型。当我尝试这样做时,Ninject 会抛出一个异常,告诉我我不能多次绑定到同一个接口。
在一个名为Presentable 的所有演示者类都继承自的类中,我尝试执行Kernel.Get<IPresenter>(new ConstructorArgument("view", this)),因此在页面/视图中分配IPresentable Presenter,其中页面/视图实现演示者期望作为参数的接口.
有什么办法可以让ninject识别不同的构造函数参数类型?
【问题讨论】: