要解决ASP.NET Core 3.1中AJAX Post将NULL发送到控制器的问题,你可以按照以下步骤进行操作:
[HttpPost]
public IActionResult MyAction([FromBody] MyModel model)
{
// 处理逻辑
return Ok();
}
var data = {
property1: value1,
property2: value2
};
$.ajax({
url: "/controller/action",
type: "POST",
data: JSON.stringify(data),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(response) {
// 处理成功逻辑
},
error: function(xhr, status, error) {
// 处理错误逻辑
}
});
确保在发送AJAX请求时正确设置了请求头。使用contentType: "application/json; charset=utf-8"
来告诉服务器请求的数据类型为JSON。
确保你的模型类具有正确的属性和属性类型,并且与前端代码中的属性名称匹配。
public class MyModel
{
public string Property1 { get; set; }
public int Property2 { get; set; }
}
通过按照上述步骤检查和调整你的代码,你应该能够解决ASP.NET Core 3.1中AJAX Post将NULL发送到控制器的问题。