C# 使用asp.core html标记生成指向具有路由属性的操作的链接
我试图理解这些新的ASP.CORE标记,但不知道如何生成带有custome route的操作链接 以下是我的行动:C# 使用asp.core html标记生成指向具有路由属性的操作的链接,c#,asp.net-core,C#,Asp.net Core,我试图理解这些新的ASP.CORE标记,但不知道如何生成带有custome route的操作链接 以下是我的行动: [Route("[controller]/icatalog/{cartID:int:min(1)}",Name ="CatalogeRoute")] [ActionName("Catalog")] public IActionResult PublicCatatalog(int cartID) { return View("Cart")
[Route("[controller]/icatalog/{cartID:int:min(1)}",Name ="CatalogeRoute")]
[ActionName("Catalog")]
public IActionResult PublicCatatalog(int cartID)
{
return View("Cart")
}
“旧”方式的泛化工作良好
工作:
<a href="@Url.Action("Catalog","Home",new {basketID=1 })">Test2</a>
<a class="nav-link" href="@Url.Link("CatalogeRoute",new {card=1 })"> Test3</a>
但是ASP.CORE标记不起作用:
<a asp-action="Catalog" asp-controller="Home" asp-route-id="1">Test1</a>
Test1
您需要使用与动作参数名称匹配的属性。
因此,在这种情况下:
<a asp-action="Catalog" asp-controller="Home" asp-route-cartID="1">Test1</a>
Test1
试试asp-route-cartID
。是的,现在它可以工作了。谢谢