我希望我的网址结构如下:
www.stackoverflow.com/order/...
www.stackoverflow.com/admin/order/...
现在以上两种都使用不同的控制器。
/controllers/ordercontroller
/controllers/admin/ordercontroller
有没有办法可以拥有这个网址结构?
我在想我是否可以这样做:
/controllers/ordercontroller
/controllers/admin/adminordercontroller
不知何故,在我的路线中,所有管理员相关控制器的名称前缀为'admin'?
答案 0 :(得分:2)
当然,没问题。请记住,您也可以在路线中使用静态文本。
routes.MapRoute("admin", "admin/{controller}/{action}/{id}", ....
routes.MapRoute("normal", "{controller}/{action}/{id}", ...
这里的关键是要确保管理路由是第一个,以便它首先在匹配URL时破解。否则,“正常”路线将吞下它,因为它也匹配。