asp.net-mvc - asp.net mvc でルーティングを行う方法は?
为情所困
为情所困 2017-05-16 17:06:19
0
1
594

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 でこの種のパスをマッピングする方法がわかりません。 ? ?

为情所困
为情所困

全員に返信(1)
阿神

これは、ルーティング ルールの定義方法とルートが定義される順序によって異なります。
この要求が 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 章ルーティング ルールを読むことをお勧めします。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート