【发布时间】:2021-07-15 04:29:29
【问题描述】:
我正在创建一个 .NET 5 Web API,我的控制器有两种方法,第一种是 Get 方法,如下所示:
[Route("GetRankingByListIdAll/{ListId}")]
[HttpGet]
public async Task<ActionResult> GetRankingByListIdAll([FromQuery] string ListId)
{
var result = await _userService.GetRankingByListIdAll(ListId);
return Ok(result);
}
另一种方法是POST 方法,如下所示:
[HttpPost("AddUser")]
public async Task<ActionResult> AddUser([FromBody] Model model)
{
bool userInList = await _usersService.validateEmailInUsers(model.email, model.otherProperty);
if (!userInList)
{
var result = await _userService.addUser(model.property, model.otherProperty,model.proper);
return Ok(result);
}
else
{
return BadRequest("message");
}
}
正如您在get方法中看到的那样,我将“[Route]”设置为路由,而在post方法中,我将路由放入[HttpPost(“”)],但我无法传递参数,我有在 Get 方法中尝试使用如下路线:
[HttpGet("GetRankingByListIdAll/{ListId}")]
但它也不起作用
在 Get 方法中,我使用了这个请求:
https://localhost:44340/api/User/GetUserByListId/ListId=59D512FB-1CCF-47E2-8E85-B4F76192D941
我的控制器名为“UserController”,我的 api 使用 JWT 进行了授权
在 .net core 2.2 中这个 API 工作正常,但我还没有找到如何在 .net 5 中做到这一点,我想知道是否有人可以帮助我。
【问题讨论】:
-
“它不起作用”是什么意思?
标签: c# asp.net-core-mvc asp.net-mvc-routing asp.net5