デフォルトルートを使用する
routes.MapRoute(
"Admin", // Route name
"Admin/{action}", // URL with parameters
new { controller = "Admin", action = "Index" } // Parameter defaults
);
アプリケーションの多くのルート (約 90%) が機能しているので、問題ありません。
ユーザーが を入力する/logon/strangeroute
と、MVC offcourse がエラーをスローしstrangeroute
ますlogoncontroller
。
ですべての例外ハンドラーをキャッチするglobal.asax.cs
と、ルーティング エラー (これをルーティング エラーと呼びます) と別のエラー (コードの残りの部分でスローされる) の違いがわかりません。
ルートでエラーが発生した場合、ほとんどの場合は 404 エラーであり、ユーザーを通常の一般的なエラー ページではなく 404 ページにリダイレクトしたいため、エラーの種類を区別したいと思います。
解決策の 1 つは、すべてのページのすべてのルートを作成し、既存のデフォルト ルートを破棄してキャッチオール ルートを実装することですが、URL ごとに個別のルートを作成することは避けたいと思います。
これを行う別の方法はありますか?