首页 新闻 搜索 专区 学院

初学,MVC URL地址的问题,求各路神仙 指路。

0
悬赏园豆:30 [已解决问题] 解决于 2015-04-17 16:17

view 写上:

@Html.ActionLink("过去注册", "RegPage", new { id = "158", uid = "223" });

生成html是:

<a href="/Home/RegPage/158?uid=223">过去注册</a>

URL里面有“?”问号呀。。

我想要的结果是:

/Home/RegPage/158/223

具体怎么整,要在那里配置什么东西,或者我的ActionLink写错了吗?

说实话,那些理论有点看不懂,希望有简单的例子。

LostTime的主页 LostTime | 初学一级 | 园豆:175
提问于:2013-01-29 16:24
< >
分享
最佳答案
0

建立两个路由就可以了,

routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}/{uid}", // URL with parameters
                new { controller = "Home", action = "RegPage", id = UrlParameter.Optional, uid = UrlParameter.Optional } // Parameter defaults
            );

用这两个路由试试

收获园豆:30
aehyok | 小虾三级 |园豆:1012 | 2013-03-09 11:57
其他回答(4)
0

修改路由Global.asax.cs

routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}/{uid}", // URL with parameters
                new { controller = "Home", action = "RegPage", id = UrlParameter.Optional, uid = UrlParameter.Optional } // Parameter defaults
            );

Rich.T | 园豆:3440 (老鸟四级) | 2013-01-29 16:27

高人,这样的话,网站默认直接就进入了 Home/RegPage/158/223  这个页面了。

我系统默认进入的是Home/Index 这个页面呀?

并且有一个参数的 链接又出现问题了:

@Html.ActionLink("过去注册", "RegPage", new { uid = "223" });

这样生成的 URL为:

<a href="/Home/user?uid=223">过去注册2</a>;

支持(0) 反对(0) LostTime | 园豆:175 (初学一级) | 2013-01-29 17:30

有没有办法,直接在Html.ActionLink 里面设置呢。

支持(0) 反对(0) LostTime | 园豆:175 (初学一级) | 2013-01-29 17:31
0

同问

淘@淘 | 园豆:602 (小虾三级) | 2013-01-29 16:28
0

不传参数就用直接写标签里

<a href="@rl.Content("~/Home/RegPage/158")">过去注册</a>

骷髅人 | 园豆:464 (菜鸟二级) | 2013-01-29 16:54
0

"/Home/RegPage?confid=" + id

真假不分 | 园豆:248 (菜鸟二级) | 2013-07-26 02:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册