升级到 .NET 6 后 [FromBody] 参数值为 null

将一个项目升级到 ASP.NET Core 6 之后,下面的 Controller Action 中 query 值总是为 null

public SearchResult GetByQuery(string appName, [FromBody] ZzkQuery query)
{
// ...
}

curl 请求的参数如下

-H "Content-Type: application/json; charset=UTF-8" -d '{"QueryStr":"test"}'

请问如何解决?

回答

给第1参数加上 [FromRoute] 可以解决

public SearchResult GetByQuery([FromRoute]string appName, [FromBody] ZzkQuery query)
{
  // ...
}
以上是升级到 .NET 6 后 [FromBody] 参数值为 null的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>