コントローラーを1つだけにしたいサイトを構築しています。URLは次のようになります。
\main-page\sub-page
main-page
コントローラーではなくsub-page
、アクションでもありません。データベース内のページの名前にすぎず、その場でレンダリングしたいものです。つまり、多くのページがあり、それぞれにコントローラーを作成したくありません。実際、次のような 1 つのアクションをHome
持つ 1 つのコントローラーだけが必要です。Index
Function Index(ByVal Page As String, ByVal SubPage As String) As ActionResult
また、パラメーターを使用してページ コンテンツを動的に読み込むビューは 1 つだけです。
次のルートはほとんど機能します。
routes.MapRoute(
"Default", _
"{page}/{subpage}", _
New With {.controller = "Home", .action = "Index", .page = "Landing", .subpage = "Index"}
)
/images/somefile.jpg
しかし、問題は、ルートと一致するため、たとえば などのファイルの要求も取得していることです。
問題は、画像リクエストを誤って取得せずにこれを行うにはどうすればよいか、または私がやろうとしていることをサポートするためにルートを実行するまったく別の方法がありますか?