ASP.Net Core锚标记助手作为RESTful链接

时间:2017-10-14 06:36:29

标签: asp.net asp.net-core asp.net-core-tag-helpers

我使用锚标记帮助程序,大部分工作正常。我想要清理生成的特定网址,我的标记看起来像这样(请注意,在这种情况下,类型比id更具体,不重要):

<a asp-controller="SomeController" asp-action="SomeAction" asp-route-id="@Model.ID" asp-route-type="@someType">

我想获得一个如下所示的网址:

http://localhost:1234/SomeController/SomeAction/42/1

但我得到了

http://localhost:1234/SomeController/SomeAction/42?type=1

有没有办法获得额外的&#39; RESTful格式的参数,而不是GET字符串?我总是可以用更传统的方式修改路线或URL,但是如果我能做到这一点,我很好奇。

1 个答案:

答案 0 :(得分:0)

我会回答我自己的问题,希望它能让其他人受益。问题是我需要创建一个自定义路由,如下所示:

            routes.MapRoute(
                name: "newRoute",
                template: "{controller=SomeController}/{action=SomeAction}/{id}/{type}");

如果有更好的做法,则对替代方法感兴趣。