UnitOfWork / Repository / MVC アプリケーションに取り組みました。これで問題なく動作するようになったので、UnitOfWork をコントローラーから切り離したいと思います。これを行う 1 つの方法は、コントローラーのコンストラクターで Ninject (またはその他) を使用して依存関係を注入することです。ただし、これは UnitOfWork がコントローラーと同時にインスタンス化されることを意味します。
UnitOfWork を使用する方法は、次のような Using ブロックです。
using(var unitOfWork = new IUnitOfWork)
{
return unitOfWork.GetRepository<IEmployeesRepository>().GetAllEmployees();
}
明らかに、インターフェイスをインスタンス化することはできません。依存性インジェクターで注入されたインスタンスの実装がありますが、using 句にどのように注入できますか?
プロパティ注入とメソッド注入を見ましたが、それらを使用して目標を達成する方法がわかりません。