C# Ninject contstructor多接口参数

C# Ninject contstructor多接口参数,c#,inversion-of-control,ninject,C#,Inversion Of Control,Ninject,如何使用ninject注入多个参数? 例如: 已经尝试过了,它给了我一个ninject激活异常,我绑定它们所做的就是使用它 kernel.Bind<IWeapon>().To<Sword>(); kernel.Bind<IShield>().To<DragonSheild>(); kernel.Bind<ISoap>().To<Safeguard>(); kernel.Bind().To(); kernel.Bind().

如何使用ninject注入多个参数? 例如:

已经尝试过了,它给了我一个ninject激活异常,我绑定它们所做的就是使用它

kernel.Bind<IWeapon>().To<Sword>();
kernel.Bind<IShield>().To<DragonSheild>();
kernel.Bind<ISoap>().To<Safeguard>();
kernel.Bind().To();
kernel.Bind().To();
kernel.Bind().To();

我无法运行我的项目,它总是给我一个ninject异常。

您给出的示例不是来自您的应用程序,对吗? 我认为您的应用程序如下所示:

public class TerminalService : ITerminalService
{
  public TerminalService(IPOSJobService posJobService){}
}

public class POSJobService : IPOSJobService
{
  public class POSJobService(ITerminalService terminalsService){}
}
如果这是真的,那么问题就很清楚了。这两个类相互参照。

这是某种父子关系,但依赖关系应该是单向的。

请在问题中添加异常详细信息。还显示引发该异常的代码您可以与我们共享异常详细信息吗?Ninject.dll中发生了类型为“Ninject.ActivationException”的异常,但未在用户代码中处理错误使用从IPOSJobService到POSJobService的绑定激活IPOSJobService在两个服务,还有什么你想知道的吗?我认为例外情况清楚地描述了问题所在。如果没有,请使用您在评论中提供的详细信息更新您的问题,并解释问题所在。
public class TerminalService : ITerminalService
{
  public TerminalService(IPOSJobService posJobService){}
}

public class POSJobService : IPOSJobService
{
  public class POSJobService(ITerminalService terminalsService){}
}