インジェクト属性がフィールドに対して機能していません。
[Inject]
public MyContext context; //Not injected
[Inject]
public MyContext context {get; set;} //Injected
デフォルトのNinject設定を使用しています。なぜフィールドが注入されないのですか?
インジェクト属性がフィールドに対して機能していません。
[Inject]
public MyContext context; //Not injected
[Inject]
public MyContext context {get; set;} //Injected
デフォルトのNinject設定を使用しています。なぜフィールドが注入されないのですか?
許可されていないからです。
Ninject 2 Betaの発表から:
Ninject 1.xにあったもので、Ninject2にはないもの。
- フィールドインジェクション:Ninject 2のインジェクションは、式ツリーによって駆動されるようになりました。.NET3.5では、式ツリーを使用してフィールド値を設定する方法はありません。とにかくこれは悪い習慣なので、私はそれをカットすることにしました。