Html.ActionLink显示查询网址,而不是pretty的网址 [英] Html.ActionLink showing query url instead of pretty url

查看:120
本文介绍了Html.ActionLink显示查询网址,而不是pretty的网址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Html.ActionLink

 <李> $ {H​​tml.ActionLink< HomeController的>(C => c.Edit(ViewData.Model.Id,ViewData.Model.Title),编辑)}< /李>
 

在为HTML创建显示的网址是编辑/ 5006?标题=一个。我要如何改变这种像 A pretty的URL编辑/ 5006 /一

我的编辑操作的方法是

 公众的ActionResult编辑(INT ID,串题)
 

解决方案

您需要有一个路由设置:

  routes.MapRoute(
    DefaultWithTitle
    {控制器} / {行动} / {显示} / {标题},
    新
    {
        控制器=主页,
        行动=编辑,
        ID = UrlParameter.Optional,
        标题= UrlParameter.Optional
    }
);
 

The Html.ActionLink

<li> ${Html.ActionLink<HomeController>(c => c.Edit(ViewData.Model.Id, ViewData.Model.Title), "Edit")} </li>

When created as html shows the URL to be Edit/5006?title=One . How do I change this to a pretty URL like Edit/5006/One ?

My Edit Action method is

public ActionResult Edit(int id, string title) 

解决方案

You need to have a route setup:

routes.MapRoute(
    "DefaultWithTitle",
    "{controller}/{action}/{id}/{title}",
    new 
    { 
        controller = "Home", 
        action = "Edit", 
        id = UrlParameter.Optional,
        title = UrlParameter.Optional
    }
);

这篇关于Html.ActionLink显示查询网址,而不是pretty的网址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆