2016-12-25 71 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