无法使aspnet核心api命名工作

时间:2016-12-25 08:32:36

标签: c# asp.net-web-api asp.net-core-mvc

我有一个名为" ClientController"的客户端控制器。控制器的启动如下:

[Route("api/[controller]")]
[AllowAnonymous]
public class ClientController : Controller

第一个httpget方法就像这样 - 命名等只是一个" Get":

    public IActionResult Get()
    {...

..当我使用Postman打电话时确实有效:

http://localhost:5001/api/Client

但是,如果我将名称更改为“索引”并将其命名为“索引”,则为:

    [HttpGet(Name = "Index")]
    public IActionResult Index()
    {...
        return new OkObjectResult(some object)
    }

我再次使用Postman这次明确地调用它:

    http://localhost:5001/api/Client/Index

我获得404状态.. - 未找到..

我已经四处寻找了一些答案,但它对API和命名约定的ASPNET核心示例有点了解。

如何命名IActionResult API方法(通过内涵)并正确调用它(例如URL结构)?关于正确惯例的一点方向会很棒..

1 个答案:

答案 0 :(得分:1)

你试过这个吗?

    [HttpGet("Index",Name = "Index")]
    public IActionResult Index()
    {...
        return new OkObjectResult(some object)
    }

此链接提供了更多详细信息。请检查出来

https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/routing