0

これは私のインターフェイスとクラスです:

public interface IWeapon
{
   void Shoot();
}

public interface IWarrior
{
   void Kill();
}

public class Killer : IWarrior
{
   private static IWeapon _weapon;

   public void Kill()
   {
       _weapon.Shoot();
   }
}

public class Rifle : IWeapon
{
   public void Shoot()
   {
   }
}

Ninjectを使用してKillerクラスにRifleを注入するにはどうすればよいですか?

4

1 に答える 1

2

これは InSingletonScope を使用して行う必要があるため、Ninject はスタティックを注入しません。クラス外からフィールドにアクセスしてはならないため、フィールド インジェクションもサポートしていません。代わりに、コンストラクターまたはプロパティ インジェクションを使用してください。

于 2012-04-15T09:03:25.227 に答える