[FromRoute]参数的Url.Action

时间:2018-03-13 13:43:56

标签: c# asp.net-mvc asp.net-core asp.net-mvc-routing

在ASP.NET MVC Core 2.0中,我有一个控制器操作

public async Task<IActionResult> Details([FromRoute] string bigId, string smallId)

如何获取View的链接?

像这样使用Url.Action()

<a href="@Url.Action("Details", "MyController",
            new {  bigId = Model.BigId, smallId = Model.SmallId })">
  Details
</a>

生成href="/Mycontroller/Details?bigId=123&smallId=456",但我需要"/Mycontroller/Details/123?smallId=456"

1 个答案:

答案 0 :(得分:0)

没关系,我找到了答案。

控制器中的方法需要用

进行修饰
[HttpGet("Details/{bigId}")]
public async Task<IActionResult> Details([FromRoute] string bigId, string smallId)

然后视图中的Url.Action会生成正确的href:"/Mycontroller/Details/123?smallId=456"