1

私は、MVC3 を使用して地元の大学のプロジェクトに取り組んでいます。立ち往生していて、解決策が見つからない要件に遭遇しました。
私の URL が www.abc.com であるとします
。要件は、URL の後に教師の名前を入力すると、次のように教師の詳細ビューが表示されることです :
www.abc.com/john
www.abc.com/smith
www.abc.com/teacher=john のようなオプションですが、拒否されました。
データベースには多くの教師が存在する可能性があるため、すべての教師のコントローラーでメソッドを作成できないため、これは URL の書き換えまたはその他の方法に関連するものですか。誰でもこのシナリオについて私を案内してもらえますか?
敬具

4

1 に答える 1

7

MVC はこれをネイティブに行います。

そのためのルートを作成するだけです:

routes.MapRoute(
    "Teacher route",
    "/{teacher}",
    new { controller = "SomeController", action = "SomeAction" }
)

これは、他の/WhateverURL (例: /About) と競合することに注意してください。それを避けるために、私のMapDefaultController()拡張機能を使用して、このコントローラーの前に特定のコントローラーのルートをマップできます。

于 2012-05-17T14:33:28.017 に答える