问题描述
我有接口(例如 IMyInterface
)。如果我调用 kernel.Get<IMyInterface>()
,我需要知道将创建哪种类型的对象。不是 IMyInterface
的实例,而是不创建实例本身的实例类型。可能吗?
解决方法
Ninject 没有这个功能。您可以从 Ninject IKernel
(如 StandardKernel
)调用 GetBindings(Type)
,但 Ninject 使用提供者模型,因此必须调用绑定的提供者才能查看结果。
如果此功能确实需要动态,我建议创建一个自定义元服务以将服务映射到实现。