你如何使用ninject注入多个参数? 例如:
IWeapon weap;
ISheild sheld;
ISoap isoap;
public myclass(IWeapon weapon, IShield shield, ISoap soap)
{
weap = weapon;
sheld = shield;
isoap = soap;
}
已经尝试了这个它给了我一个ninject激活异常所有我做的绑定他们是使用
kernel.Bind<IWeapon>().To<Sword>();
kernel.Bind<IShield>().To<DragonSheild>();
kernel.Bind<ISoap>().To<Safeguard>();
我无法运行我的项目,它一直给我一个ninject异常。
答案 0 :(得分:0)
您提供的示例不是来自您的申请? 我认为你的应用程序看起来像这样:
public class TerminalService : ITerminalService
{
public TerminalService(IPOSJobService posJobService){}
}
public class POSJobService : IPOSJobService
{
public class POSJobService(ITerminalService terminalsService){}
}
如果确实如此,则问题很明显。这两个班级相互交叉参考 这是一种亲子关系,但依赖应该是一种方式。