別のコントローラのメソッドを呼び出したい。問題は私のプロジェクトでは、すべてのコントローラーがWindsor castleを使用して作成され、Windsor castleが依存関係を解決することです。これは、コントローラをインスタンス化することができないことを意味します。 MVCにコントローラをインスタンス化し、その上でメソッドを呼び出して(オブジェクトを返す)どうすればよいですか?mvcの別のコントローラからコントローラのメソッドを呼び出す
0
A
答えて
0
私はあなたに2つのことを教えてあげます:1)まず、あなたが望むことを達成する可能性が最も高い方法を示します。2)その後、あなたの目標を達成する別の方法:)
1:自動配線を使用する場合、コンテナからのものを取得する方法は、それをコンストラクタ引数として追加することによって依存関係を宣言することです(コンテナと仮定すると、その具体的な種類によってコントローラを解決する方法を知っている):
public class HomeController
{
readonly AccountController accountController;
public HomeController(AccountController accountController)
{
this.accountController = accountController;
}
}
これが最も可能性が高いあなたがHomeController
をwithingからAccountController
であなたがやりたいことができます。しかし、これはそれほど美しくはありません。
2:コントローラを別のコントローラに注入するのは、おそらくあなたが望むものではありません。コントローラーのアクションメソッドで使用しているロジックを専用サービスに移行したいと思っています。 DoSomethingInteresting
が発生し、IDoStuff
が発生し、両方のコントローラがIDoStuff
に依存するようになります。これはあなたに理にかなっていますか?
関連する問題
- 1. Spring MVC、コントローラ内から別のコントローラを呼び出す
- 2. コントローラと別のコントローラでメソッドを呼び出す方法
- 3. MVC3:別のコントローラからの別のコントローラからビューを呼び出す方法
- 4. 別のコントローラからメソッドを呼び出す
- 5. コントローラからメソッドを呼び出す
- 6. 別のコントローラから別のアクションメソッドを呼び出す
- 7. Ajaxリクエスト - Springのコントローラで別のメソッドを呼び出す
- 8. 春のサービスクラスから別のコントローラを呼び出す
- 9. extjs mvcのコントローラからビューを呼び出す方法4
- 10. jQuery $。コントローラのメソッド呼び出し。
- 11. ビュー内からコントローラのメソッドを呼び出すCakePHP
- 12. コントローラからコンポーネントのメソッドを呼び出す方法
- 13. ビューからコントローラのメソッドを呼び出す方法は?
- 14. JSからコントローラのActionResultメソッドを呼び出す
- 15. Azure:MVC実装のコントローラからWebRoleメソッドを呼び出す方法
- 16. ajaxがmvcコントローラを呼び出す
- 17. Rails:別のコントローラを持つデータベースからエントリを呼び出す
- 18. ボタンでasp.netコントローラからMVC 4呼び出し方法私のコントローラで
- 19. AngularJSのディレクティブからの親コントローラの呼び出しメソッド
- 20. 別のコントローラから関数を呼び出す
- 21. MVCコントローラからのWCFサービスへの非同期呼び出し
- 22. sails.jsコントローラでsuperメソッドを呼び出す
- 23. Sails.js、コントローラからの呼び出しルート
- 24. 角度コントローラが別のモジュールコントローラから呼び出す
- 25. Spring MVCコントローラからの非同期呼び出し
- 26. Ember:コントローラからコンポーネントアクションを呼び出す
- 27. Grailsサービス - コントローラからの呼び出しメソッド?
- 28. Spring-MVC:コントローラ内からではなく、バリデータを呼び出す
- 29. Magento onepageチェックアウトからMvcコントローラへJQuery.Post()を呼び出す
- 30. ビューからコントローラ拡張メソッドを呼び出す
私たちがあなたのアプローチをよりよく理解できるように、投稿できるコードがありますか? –