小编Wil*_*ski的帖子

ASP.NET核心属性路由

我正在将项目迁移到ASP Net Core,但是我无法配置这些路由,因为我使用属性来映射操作。

ASP.Net WebAPI2的代码

[Route("api/[controller]")]
public class SalesController : Controller
{
    // api/sales/1 -> ok
    [HttpGet]
    public HttpResponseMessage Get(int id)
    {
        // Logic
    }   

    // api/sales -> ok
    [HttpGet]
    public HttpResponseMessage Get([FromUri] PaginationHelper pagination)
    {
        // Logic
    }  

    // api/sales?me -> ok
    [ActionName("Get")]
    public HttpResponseMessage GetMe(bool? me)
    {
        // Logic
    }  
}
Run Code Online (Sandbox Code Playgroud)

ASP.Net Core的代码

在文件Startup.cs中设置app.UseMvc();。

[Route("api/[controller]")]
public class SalesController : Controller
{
    // api/sales/1 -> ok
    [HttpGet("{id}")]
    public IActionResult Get(int id)
    {
        // Logic
    }   

    // …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core asp.net-core-2.0 asp.net-core-routing

7
推荐指数
2
解决办法
6108
查看次数