简体   繁体   English

如何使用Url.Action在ASP.NET Core 2.0剃刀页面中传递多个动作

[英]How to pass multiple actions in asp.net core 2.0 razor page using Url.Action

I want to use @Url.Action to pass multiple parameters through the URL in an ASP.NET Core 2.0 Razor Page. 我想使用@Url.Action通过ASP.NET Core 2.0 Razor页面中的URL传递多个参数。 I don't know which tag helper I should use. 我不知道我应该使用哪个标签助手。

@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>

As far as I know you cannot do that with AnchorTagHelper . 据我所知,您无法使用AnchorTagHelper做到这AnchorTagHelper If you want to add parameters to it then you have to do this one by one: 如果要向其中添加参数,则必须一个接一个地执行此操作:

<a asp-action="Edit" asp-route-id="@Model.Id" asp-route-something="Something">Link</a>

If you want to use Url.Action then you have to pass it via href parameter: 如果要使用Url.Action则必须通过href参数传递它:

<a href="@Url.Action(Model.Action)">Link</a>

You can use UrlHelper.Action(string action, object values) to pass additional route values: 您可以使用UrlHelper.Action(string action, object values)来传递其他路由值:

<a href="@Url.Action(Model.Action, Model.ActionParameters)">Link</a>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM