私はMVC 2とNinjectでELMAHを使用しようとしています。パラメータのないコンストラクタを使用する必要があります。 Using a parameterless controller constructor with Ninject?コンストラクタインジェクションの代わりにプロパティインジェクションを使用する
コンストラクタインジェクションの代わりにプロパティインジェクションを使用することをお勧めしました。私はDepartmentsRepositoryまたは_departmentsRepositoryにアクセスしようとするかどうかを
public class DepartmentsController : Controller
{
private IDepartmentsRepository _departmentsRepository;
[Inject]
public IDepartmentsRepository DepartmentsRepository
{
get { return _departmentsRepository; }
set { _departmentsRepository = value; }
}
...
}
しかし、私の他のコントローラ機能で
が、私はインスタンスに設定されていない オブジェクト参照を取得:これにpublic class DepartmentsController : Controller
{
private IDepartmentsRepository departmentsRepository;
public DepartmentsController(IDepartmentsRepository departmentsRepository)
{
this.departmentsRepository = departmentsRepository;
}
...
}
:だから私はこのから移動しましたアクセスしようとするとオブジェクトのエラーが発生します。
私はここで何かする必要がありますか?
あなたは 'Ninject.Web.Mvc'を使用していますか? –
何を待ちますか?パラメータのないコンストラクタを使用する必要があるのは何ですか? – jfar
プロパティに特定の名前がある場合、特定の依存関係が解決されないという奇妙な問題が発生しています。名前が変更されても正常に動作しますが、他のすべての依存関係は通常どおりに解決されます(同じプロパティ名の場合は、同じ依存関係がうまく解決されます)。私は理由を知りませんが、いつも試してみることです。 –