【问题标题】:How to pass multiple actions in asp.net core 2.0 razor page using Url.Action如何使用 Url.Action 在 asp.net core 2.0 razor 页面中传递多个操作
【发布时间】:2018-07-15 14:45:23
【问题描述】:
我想使用@Url.Action 通过 ASP.NET Core 2.0 Razor 页面中的 URL 传递多个参数。我不知道我应该使用哪个标签助手。
@model Memberships.Models.SmallButton
<a asp-page="@Url.Action(Model.Action)@Model.ActionParameters"
class="btn @Model.ButtonType btn-sm">
<span class="glyphicon glyphicon-@Model.Glyph"></span>
<span class="sr-only">@Model.Text</span>
</a>
【问题讨论】:
标签:
c#
razor
asp.net-core-2.0
【解决方案1】:
据我所知,AnchorTagHelper 无法做到这一点。如果要为其添加参数,则必须一一进行:
<a asp-action="Edit" asp-route-id="@Model.Id" asp-route-something="Something">Link</a>
如果要使用Url.Action,则必须通过href 参数传递:
<a href="@Url.Action(Model.Action)">Link</a>
您可以使用UrlHelper.Action(string action, object values) 传递额外的路由值:
<a href="@Url.Action(Model.Action, Model.ActionParameters)">Link</a>