要使Asp.net Core 3.1控制器方法使用参数从body传递工作,需要在控制器方法中添加[FromBody]属性。
以下是一个代码示例:
[HttpPost] public IActionResult Post([FromBody] Order order) { if (order == null) { return BadRequest(); }
// 添加order到数据库中
return CreatedAtRoute("GetOrder", new { id = order.Id }, order);
}
在上面的代码中,[FromBody]属性告诉Asp.net Core 3.1将Order类作为参数从请求的body获取。这意味着必须使用Post请求,并发送一个Order实例的JSON表示。