ASP核心如何使用锚标记助手与Get动作?

时间:2017-09-04 16:40:57

标签: asp.net asp.net-core webserver url-routing

如何生成这样的网址" www.example.com/cars/1/slug"使用锚标记助手?

[Route("cars")]
 public class CarsController: Controller
   {
   [HttpGet("{id}/{slug?}")]
 public IActionResult Get(int id, string slug = "static-slug")
    {
           ...

在我的剃刀视图中,我写道:

    <a  asp-controller="cars"  asp-route-id="@ResultSearch.CarId" asp-route-slug="@ResultSearch.Slug">

生成此

http://example.com/cars/cars?id=1072&slug=slug

我或多或少地遵循了宁静的设计,我无法命名Get action&#34; cars&#34;因为我已经用这个名字定义了另一条路线,以显示汽车部分。我正在研究的路线是显示特定汽车的细节。

1 个答案:

答案 0 :(得分:0)

您需要指定操作,除非它在那里,否则无法找到操作:

<a asp-action="Get" asp-controller="Cars" asp-route-id="@ResultSearch.CarId" asp-route-slug="@ResultSearch.Slug">