【问题标题】:WebApi Attribute Routing - simplest route does not workWebApi 属性路由 - 最简单的路由不起作用
【发布时间】:2014-09-28 04:17:56
【问题描述】:

我有一个非常基本的 WebApi Controller,如下所示,它使用属性路由。

public class ValueController : ApiController
{
    //This route returns a 404
    [Route("api/v1/values")]
    public Value GetValue()
    {
        return new Value() { Name = "api/v1/values" };
    }

    //this route works fine
    [Route("api/v1/values/{valueId}")]
    public Value GetValueById(int valueId)
    {
        return new Value() { Name = "api/v1/values/{valueId}" };
    }

    //this route works fine
    [Route("api/v1/values/{valueId}/more")]
    public Value GetChildOfValue()
    {
        return new Value() { Name = "api/v1/values/{valueId}/more" };
    }
}

由于某种原因,第一个路由返回 404。 其他两个都按预期工作。

属性路由在 WebApiConfig 中开启。

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        config.MapHttpAttributeRoutes();
    }
}

关于为什么第一条路线不起作用的任何想法???

【问题讨论】:

    标签: asp.net-web-api2 attributerouting


    【解决方案1】:

    这是我如何调用它们并且所有工作正常,也许您请求的是 /api/v1/value 而不是 value**s**

    http://localhost:62138/api/v1/values
    http://localhost:62138/api/v1/values/22
    http://localhost:62138/api/v1/values/22/more
    

    【讨论】:

      猜你喜欢
      • 2014-03-25
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 2021-06-10
      • 2017-04-09
      • 2019-01-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多