サポートに関するすべてのページを表示する方法が好きでした(たとえば、http://www.company.com/support
)。 ASP.NET MVC 3に移行してthisを試した後、すべてのタイプのページを実行できますが、同じフォルダ内では実行できません。同じフォルダにASPX、HTM、MVCのビューがある場合
これに対応する方法はありますか?
ありがとうございました。
サポートに関するすべてのページを表示する方法が好きでした(たとえば、http://www.company.com/support
)。 ASP.NET MVC 3に移行してthisを試した後、すべてのタイプのページを実行できますが、同じフォルダ内では実行できません。同じフォルダにASPX、HTM、MVCのビューがある場合
これに対応する方法はありますか?
ありがとうございました。
あなたはMVCページと同じフォルダ内に非MVCのページを混在させる必要がある場合は、ここでいくつかのヒントです:
は、デフォルトルート"/{controller}/{action}/{id}"
を削除し、各MVCページのルートを作ります。そのようにして、ルートによってキャッチされない要求は、「古い」要求処理になります。
return View();
コントローラのメソッド呼び出しでは、Views
フォルダ内のコントローラとして指定されたフォルダ内のビューを探します。そのため、ビューの名前を指定します。 return View("/support/index");
。
MVCビューは実際にはsupport
というフォルダにある必要はなく、好きな場所に置くことができます。これは、MVCによってどのURLが処理されるかを決定するルートです。
ありがとうGuffa:その名前の下にビューが見つからない場合、従来のページを探すのは素晴らしいことです。 – abenci
@devdept:可能かどうかわかりません。 MVCエンジンは、いずれかのルートが一致するかどうかを判断するときはビューを探しません。実際のルートのみを判断します。コントローラーは、好きなビュー(まったく表示しない)を使用することができます。そのため、要求に対応するビューは必要ありません。 – Guffa