首页 新闻 会员 周边 捐助

ASP.NET Core: Action Route 如何 override Controller Route

0
悬赏园豆:30 [已解决问题] 解决于 2023-03-18 11:19

比如下面的 CreateOrderAsync Action 直接使用自己的路由 v{version:apiVersion}/orders, 忽略 OrderController 配置的路由前缀

[ApiController]
[ApiVersion("1")]
[Route("v{version:apiVersion}/users/{userId}")]
public class OrderController : BaseApiController
{
    [HttpPost("v{version:apiVersion}/orders")]
    public async Task<IActionResult> CreateOrderAsync([FromBody] CreatingOrderDto createOrderDto)
    {
        //...
    }
}
dudu的主页 dudu | 高人七级 | 园豆:30757
提问于:2023-03-18 10:32
< >
分享
最佳答案
0

Action 路由以 / 或者 ~/ 开头即可 override

[HttpPost("/v{version:apiVersion}/orders")]
public async Task<IActionResult> CreateOrderAsync([FromBody] CreatingOrderDto createOrderDto)
{
    //...
}

或者

[HttpPost("~/v{version:apiVersion}/orders")]
public async Task<IActionResult> CreateOrderAsync([FromBody] CreatingOrderDto createOrderDto)
{
    //...
}
dudu | 高人七级 |园豆:30757 | 2023-03-18 11:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册