NInject をデフォルトのコンテナーとして使用し、MVC4 プロジェクトでNInjectResolver クラスを使用しています。注射はよく効きます。
ここIActionInvoker
に示すように、カスタム JSON シリアライゼーションを提供するために、デフォルトを置き換えようとしています。
アクションが返された場合、これは問題なく動作するように見えますJsonResult
が、チョークがオンになります(デフォルトTask<JsonResult>
にバインドしても)。IActionInvoker
ControllerActionInvoker
それを非同期アクションに変換すると、アクションは (JSON ではなく) 次のテキストを返します: System.Threading.Tasks.Task<System.Web.Mvc.JsonResult>
- like calling ToString()
it.
これを修正するにはどうすればよいですか?