.NET 6 API 方法在迁移到 .NET 6 后不起作用

.NET 6 API method is not working after migration to .NET 6

我有以下 API 方法,在 .NET 6 迁移之前工作正常。

[Route("employee/update")]
[HttpPut]
[JwtAuthentication]
public async Task<IActionResult> Put([FromQuery] int id, Employee employee){
....
}

这就是我在 Blazor 应用中调用它的方式:

httpResponse = await Http.PutAsJsonAsync($"employee/update?id={Employee.Id}", employeeModel);

代码永远不会进入 API 方法,我得到 Blazor httpResponse.IsSuccessStatusCode = false 400 Http Error Bad Request。

关于我必须更改的框架中发生的更改的任何线索?

因为你使用的是json,你必须添加 frombody 属性

public async Task<IActionResult> Put([FromQuery] int id,[FromBody] Employee employee)