将 link 参数添加到 asp tag helpers with pound sign (#) anchor url in ASP.NET Core

Add link parameter to asp tag helpers with pound sign (#) anchor url in ASP.NET Core

我有以下 url http://localhost:5000/Home/Index/#test,我需要将 #test 传递给操作。我使用了 asp-route="#test"asp-route-id="#test" 但它们不起作用。

这是我的操作:

public ActionResult Index(string id)
{
    return View();
}

URL 的散列或片段部分不是路由的一部分。它只对客户端有意义。我不认为有任何方法可以通过标签助手添加它。相反,您需要使用 Url.Action:

<a href="@Url.Action("Index", "Home")#test">My Link</a>

尝试使用attribute routing

[Route("Home/Index/{id}")]
public async Task<IActionResult> Index(string id)

使用像

这样的标签助手
<a asp-action="Index" asp-controller="Home" asp-route-id="#test">Index</a>