私はMVCを初めて使用し、問題に悩まされました。私が見つけたすべての例は、APIコントローラーではなく、単純なコントローラーを参照しています。おそらく、Application_Start()で、Unityに依存関係を登録し、コードを微調整して、apicontrollerクラスが作成されると、適切な依存関係が渡されるようにする方法について、実用的なコード例があります。これが私のコントローラーの定義だとしましょう:
public class BookController : ApiController
{
private IBookService bookSerivce;
public BookController (IBookService bookSerivce)
{
this.bookSerivce= bookSerivce;
}
}
そして、私はそれを次のように統一して登録することを期待しています:
UnityContainer container = new UnityContainer();
// Register services
container.RegisterType<IBookService , BookService>();
// Register controllers
container.RegisterType<IHttpController, BookController>("Books");
ここで、MVCが依存関係を解決するためにUnityを使用し、このコントローラーのインスタンスの作成を開始して依存関係を渡すために何をする必要がありますか?
私はMVC4を使用しています。どんなアイデアでもありがたいです。
乾杯