首页 > 解决方案 > 如何构建 Web API 代码以使链接支持 api/values/{id}/name

问题描述

我是学习 C# 中的 Web API 代码的新手,想知道如何创建以下链接来获取特定值 ID 的名称。

下面提供的代码不能像我想要的那样工作,后面有“/name”。

// GET api/values/{id}/name
public string Get(int id)
{
    return getNameValue(id);
}

标签: c#httpasp.net-web-api

解决方案


You can use custom route like:

[Route("{id:int}/name")]
public string Get(int id)
{
    return getNameValue(id);
}

Update:

In WebApiConfig, modify register method to have custom routes

public static void Register(HttpConfiguration config)
    {

        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{action}/{id:int}/name",
            defaults: new { id = RouteParameter.Optional }
        );

推荐阅读