给出以下代码:
@Html.ActionLink("Edit", "Edit", new { id = "123"}, null)
帮助程序呈现的Html代码为/Edit?id=123
。
如果我的Action
已使用Route
属性或带有HttpGet("{id}")
等模板的任何其他属性进行修饰,则生成的网址肯定会失败。我知道我可以通过做类似的事情来解决这个问题:
<a href="@Url.Action("Edit")/@id">Edit</a>
但是,我想知道是否有任何内置功能可以更改MVC助手生成的URL模板,例如为了实现给定的示例。
答案 0 :(得分:-2)
如果您希望链接为/Edit/123
,则路由属性必须如下所示:
[HttpGet("[action]/{id}")]
目前您正在尝试路由到/123
。
占位符[action]
将替换为操作名称。