因为想让URL地址更有意义,一般用自定义路由功能。
例如:可生成game和game/2这样的路径
[Route("{categoryindex}/{page?}")]
public ActionResult all(string categoryindex, int page = 1)
{
return View();
}
但是这条路由就会把默认路由给冲掉。
访问默认路由/home/index,/home/about就出错了,郁闷啊。
不知道广大园友们有哪些对策?
[Route("{/home/categoryindex}/{page?}")]
我是想URL能短就尽量短点。你这样的话又多了一个Home.
@abc54288: 因为你这个根本就不标准,路由映射到 Controller 的 Action 的参数的 Uri 的规范写法是这样: Controller/Action?categoryinde=2&page=2,而你非要映射成这样:categoryinde/page?,自然就跟全局设置的 Controller/Action 冲突。
你要记住一个原则,Controller 和 Action 出现在 uri 路径中,而 Action 上的参数应该出现在 uri 的查询信息中。如果需要出现在路径中,你也应该让参数路径跟在 Controller/Action 之后。不说别的,别人读你的代码才容易读懂。