別のコントローラからビューを表示することはできますか?ASP.NET MVCの別のコントローラからビューを表示
は、例えば、私がCategoriesController
とCategory/NotFound.aspx
ビューを持っていると言います。 CategoriesController
では、私はeasly返すことができますView("NotFound")
。
は今、私は製品を追加するProductsController
とアクションとビューを持っていると言います。ただし、この操作では、製品を追加するカテゴリが必要です。たとえば、Products/Add/?catid=10
となります。
私はcatid
に基づき区分を見つけることができないのですが、私が代わりに製品のコントローラの下CategoryNotFound
ビューを作成するカテゴリーコントローラからNotFound
ビューを表示したいです。
これは可能ですか、間違った方法で構造化していますか?これを行う良い方法はありますか?
ありがとう、これは私が使用しなければならないソリューションのように聞こえる。 私はまだ別のコントローラからビューを表示することが可能かどうか疑問に思う。私はこれがMVCのいくつかのルールに違反していると思いますか? – dtc
上記の状況では、はい、Sharedフォルダを使用する必要があります。 –
これも可能です。あなたがしている場合 戻るビュー( "〜/ Views/Wherever/SomeDir/MyView.aspx") あなたが望む任意のビューを返すことができます。これは特定のルールそのものに違反するものではありませんが、ASP.Net MVCはすべて、 "congfigurationに関する規則"に関するものです。つまり、フレームワークは特定の規則を使用して自動的に動作するように構築されており、可能な限り利用する必要があります。 – womp