【问题标题】:Web Api 2 not find controller actionWeb Api 2 找不到控制器操作
【发布时间】:2015-10-30 07:22:08
【问题描述】:

我有以下控制器:

public class RecordController : ApiController
{
    [HttpGet]
    [ActionName("latest")]
    public IHttpActionResult GetLatest()
    {
        var record = recordRepository.GetLast();
        return Ok<MyRecord>(record);
    }
}

还有 WebApiConfig:

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

        config.Routes.MapHttpRoute(
            name: "ApiByAction",
            routeTemplate: "api/{controller}/{action}",
            defaults: new { action = "Get" },
            constraints: null
        );
    }
}

我要访问的网址是:

http://localhost/api/record/latest

但是,我收到了 404 Not Found 响应代码。

可能缺少什么?是路由模板吗?

【问题讨论】:

    标签: asp.net-web-api2


    【解决方案1】:

    您的示例对我来说效果很好。是否有与 url 关联的端口号?

    例如:

    http://localhost:1234/api/record/latest

    Visual Studio 会在每次应用程序启动时尝试使用某个端口号。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-31
      • 2017-03-29
      • 2013-04-24
      • 1970-01-01
      • 1970-01-01
      • 2011-10-01
      • 1970-01-01
      相关资源
      最近更新 更多