我现在在页面/index/1
1是routeValue的参数type的值
@html.actionlink("主页","index","Main");
为什么这句总是指向/index/1,我明明没有给参数type=1,我期望的是/index/
好像type=1这个被记录了,只要我指向和当前页面同action的路由,就会有这问题
/index/1和 /index/的action都是Index
1、检测你的路由定义里,是否type这个参数默认值是1,可以考虑设置为可选的(UrlParameter.Optional)
2、是否你的路由数据中有这个内容(type=1)
1没有type这个参数默认值是1,如果这样,生成出来的URL也应该是/index/,因为这时/index/和/index/1是同意义。
2没有,@html.actionlink("主页","index","Main");中没有加参数啊,type=1很奇怪像是从本页继承的。
路由 是从上到下 匹配的 谁在上面优先匹配谁 你看一下路由中 默认的路由是怎么设置的
贴出默认的路由配置看看