You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core 6 MVC中POST请求FromBody参数绑定失败问题

ASP.NET Core 6 MVC中FromBody参数绑定为null的解决方法

问题根源

ASP.NET Core 中,[FromBody] 特性仅能作用于Action的一个参数。因为HTTP请求体的数据流是一次性读取的,无法同时将请求体内容绑定到多个独立的参数上,这就是你两个字符串参数始终为null的原因。

解决方案

创建一个与请求JSON结构匹配的模型类,将请求体内容绑定到该模型实例上:

  1. 定义数据模型类
public class RegisterModel
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
}
  1. 修改控制器Action
    将原来的两个独立参数替换为模型类参数,仅保留一个[FromBody]特性:
[HttpPost]
[Consumes("application/json")]
public string RegisterUser([FromBody] RegisterModel model)
{
    return $"{model.FirstName} {model.LastName}";
}

说明

你的Ajax请求代码无需修改,它已经正确完成了以下操作:

  • 将包含FirstName和LastName的对象序列化为JSON字符串
  • 设置了正确的contentType: "application/json"请求头

内容的提问来源于stack exchange,提问作者Zala Krunal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 11:52:11