MVC 6 Web API生成URL

时间:2016-02-10 21:25:49

标签: asp.net-mvc asp.net-web-api

我正在MVC 6中编写一个应用程序并尝试进行Web api调用。来电的网址为http://mysite/api/Organizations/ {id} / groups。如何在Razor中生成该URL?通常情况下,我使用Url.Action("Get", "Organizations"),但我不确定如何在其上得到尾随/组。

1 个答案:

答案 0 :(得分:1)

假设您已在其中一个路径名称为

的api控制器上定义了此特定路由模式
public class OrganizationsController : ApiController
{
    [Route("api/Organizations/{id}/groups", Name = "OrgGroupsRoute", Order = 1)]
    public IHttpActionResult GetGroupsForOrg(int id)
    {
        return Ok(new string[] { "groups for org", id.ToString() });
    }
}

您可以使用Url.RouteUrl辅助方法通过传入路径名称来生成Url(使用我们定义的模式)

<a href="@Url.RouteUrl("OrgGroupsRoute",
                                   new { httproute=true,id = 34})">Get Groups for Org </a>