我正在为使用MVC3的本地大学开展一个项目。我遇到了一个要求,我被困住了,无法找到任何出路。
假设我的网址是www.abc.com
要求是,如果我们在URL后面输入教师姓名,我们会得到教师的详细视图,例如:
www.abc.com/john
www.abc.com/smith
我问了像www.abc.com/teacher=john这样的选项,但它被拒绝了
这是与URL重写或其他一些方法相关的事情,因为数据库中可能有许多教师,所以我无法在每个教师的控制器中创建方法。
任何人都可以指导我这个场景吗?
亲切的问候
答案 0 :(得分:7)
MVC本身就是这样做的。
只需为它创建路线:
routes.MapRoute(
"Teacher route",
"/{teacher}",
new { controller = "SomeController", action = "SomeAction" }
)
请注意,这会与任何其他/Whatever
网址(例如/About
)冲突;为避免这种情况,您可以使用my MapDefaultController()
extension在此之前映射特定控制器的路由。