2016-12-25 74 views
0

我有一个名为“ClientController”的客户端控制器。控制器的启动如下:无法获得aspnet核心api命名工作

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

第HTTPGET方法是这样的 - 命名等等只是一个“找”:

public IActionResult Get() 
    {... 

..和我用邮差它确实工作与呼叫:

http://localhost:5001/api/Client 

但是,如果我将名称更改为指标,并将其命名指数像这样:

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

我用邮差再次调用这一次明确:

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

我得到一个404个状态。 - 未找到..

我已经看了看周围的一些答案在这一点,但它的ASPNET核心API和命名约定示例稍微亮点。

如何命名IActionResult API方法(通过内涵)并正确调用它(例如URL结构)?在正确的约定一个小的方向将是伟大的..

回答

1

你有没有试过这种

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

更多细节此链接中给出。请查看

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

+0

获胜者!使用“http:// localhost:5001/api/Client/Index”,并在断点处停止...非常好。 upvoted。 – si2030

+0

很好地帮助你!和圣诞快乐 – Rajput