我们有一个类似于下面的代码。
var xyz = method(); //method() returns an interface say **Interface1**
kernel.Bind<**Interface1**>().ToConstant(xyz);
我在stackoverflow上看到以下链接:
使用与常数结合并与ninjects
的范围内的类型结合如果我们不希望对象创建在这一点上,而是在呼叫时使用Kernel.Bind<**Interface1**>().To(typeof(xyz)).InSingletonScope()
。
Bind<Interface1>().ToMethod(context => method()).InSingletonScope();