Asp.net mvc は通常
コントローラー/アクション/パラメーター
住所フォーム
しかし、ほとんどの場合、Web サイトのアドレスはそのようなパスではありません
例:
xxxx.com/asp.net/
xxxx.com/asp.net/mvc/
xxxx.com/asp.net/webform/
xxxx.com/asp.net/ado.net/
xxxx.com/javascript/
xxxx.com/javascript/jquery/
xxxx.com/javascript/angularjs/
xxxx.com/javascript/jichu/
xxxx.com/jiaoyu/
現時点では、アドレスはコントローラー/アクション/パラメーターの形式ではありません
asp.net mvc でこの種のパスをマッピングする方法がわかりません。 ? ?
これは、ルーティング ルールの定義方法とルートが定義される順序によって異なります。
リーリーこの要求が ASP.NET パイプライン モデルに入ると、事前に定義されたルートに移動して照合が実行され、最初に一致するルートが見つかると、ルーティング結果が直接返されます。
たとえば、デフォルト ルートの最初のルーティング ルールは次のとおりです:
xxxx.com/asp.net/ は、このルーティング ルール、controller="asp.net"、action="Login";
に一致します。 xxxx.com/asp.net/mvc/ は、このルーティング ルール、controller="asp.net"、action="mvc"; にも一致します。
別のルーティング ルールを定義し、このルーティング ルールが今のルーティング ルールの前にあるとします。
リーリーxxxx.com/asp.net/ は、このルーティング ルール、controller="User"、action="Link";
。に一致します。 ただし、xxxx.com/cast/ は最初のルーティング ルールとは一致しませんが、2 番目のルーティング ルールとは引き続き一致します。controller="cast"、action="Login"
この問題については、「Mastering the ASP.NET MVC3 Framework」の第 11 章ルーティング ルールを読むことをお勧めします。