首页 新闻 会员 周边

mvc 第二次点击相同的超链接,url中的controller字符会叠加,这是为什么呢?

0
悬赏园豆:20 [待解决问题]

第一次点击:localhost:3677/system

第二次点击:localhost:3677/system/system

如标题,这是为什么呢?

journet的主页 journet | 初学一级 | 园豆:8
提问于:2013-11-05 08:40
< >
分享
所有回答(4)
0

把你View代码贴出来吧,只看现象难以看出问题所在啊

Zery | 园豆:6151 (大侠五级) | 2013-11-05 09:05
0

一般来说,是你的链接写法有问题。贴链接的具体代码吧~

幻天芒 | 园豆:37175 (高人七级) | 2013-11-05 09:29
0
一 Html.ActionLink("linkText","actionName")
该重载的第一个参数是该链接要显示的文字,第二个参数是对应的控制器的方法,
默认控制器为当前页面的控制器,如果当前页面的控制器为Products,则 Html.ActionLink("detail","Detail")
则会生成 <a href="/Products/Detail">all</a>
 
二 Html.ActionLink("linkText","actionName","controlName")
该重载比第一个重载多了一个参数,他指定了控制器的名称,
如Html.ActionLink("detail","Detail","Products")则会生成
<a href="Products/Detail">all</a>
 
三 Html.ActionLik("linkText","actionName",routeValues)
routeValue可以向action传递参数,如Html.ActionLink("detail","Detail",new { id=1})
会生成 <a href="Products/Detail/1">detail</a>,
此处假设当前的控制器是Products.
四 Html.ActionLink("linkText","actionName",routeValues,htmlAttributes)
htmlAttribute可以设置<a>标签的属性,
如 Html.ActionLink("detail","Detail",new{id=1},new{ target="_blank"})
会生成 <a href="Products/Detail/1" target="_blank">detail</a>,
需要主要的是如果写成 new{ target="_blank",class="className"}则会报错,
因为class是关键字,此处应该写成 @class="className"。
 
五 Html.ActionLink("linkText","actionName","controlName",routeValues,htmlAttributes)
该重载包含了上面提到的所有参数类型

http://blog.csdn.net/jingmeifeng/article/details/7792151

悟行 | 园豆:12559 (专家六级) | 2013-11-05 09:31
0

楼上解释的很全了,学习了

袁家小黑球 | 园豆:1045 (小虾三级) | 2013-11-05 10:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册