ASP.net MVC4には、CRUD機能をデータモデルに公開するためのWeb APIという新しい概念があります。これらのコントローラの基本クラスは、ApiController
から派生したDataController
です。ASP.netコントローラがIControllerから派生しない理由
残念ながら、このApiController
は、これらがIController
のインスタンスを返すことになっているとして、これらの要求は、通常のカスタムコントローラの工場を介して処理することができないので、問題であるIController
から派生しません。
誰もが、IController
から派生しないMVCプロジェクトのコントローラーを持っている理由がわかりません。これは、すべてのコントローラーをインスタンス化できないため、カスタムコントローラーファクトリーを壊すためです。あなたのプロジェクトで。
つまり、この継承のためにDIコンテナを使用して依存関係を挿入することはできません。
これまで私自身のコントローラファクトリを使用していましたが、このクラスはwebapiコントローラの場合でも呼び出されます。 DependencyResolverを呼び出すアプリケーションを取得できません。すべてのリクエストは私自身のControllerFactoryを経由します(このカスタムファクトリを削除してもそれは変わりません)。 – thekip