使用 ajax 传递给 asp.net 核心控制器的数据为空
Passed data to asp.net core controller using ajax is null
我正在尝试使用 ajax 调用 asp.net 核心控制器,但传递的值为空。
我调试javacript是为了检查ajax中的参数是否正确。
OrderType 是 IR ID,OrderKeyword 是 test
请看截图
这是模型
public class OrderSearchInfo
{
public int OrderType { get; set; }
public string OrderKeyword { get; set; }
}
这是我的控制器
[HttpPost]
public async Task<ActionResult> SearchOrder([FromBody]OrderSearchInfo order)
{
return View();
}
调试和检查 OrderSearchInfo 订单 的值是 null
我做错了什么?我该如何解决这个问题?谢谢
我假设有一些要点需要检查:
- 数据类型:在你的模型中,有
int OrderType
,但在 JS 中你有 OrderType: "IR_ID"
,它不是数字,无法映射到 int
- 如果您的表单有
RequestVerificationToken
,您应该在请求的 headers 中传递它
- 路由(确保请求 URL 匹配 ASP.NET 预期
P.S。请在评论中添加您的进一步检查建议,以使此答案更适用于许多人。
我正在尝试使用 ajax 调用 asp.net 核心控制器,但传递的值为空。
我调试javacript是为了检查ajax中的参数是否正确。 OrderType 是 IR ID,OrderKeyword 是 test
请看截图
这是模型
public class OrderSearchInfo
{
public int OrderType { get; set; }
public string OrderKeyword { get; set; }
}
这是我的控制器
[HttpPost]
public async Task<ActionResult> SearchOrder([FromBody]OrderSearchInfo order)
{
return View();
}
调试和检查 OrderSearchInfo 订单 的值是 null
我做错了什么?我该如何解决这个问题?谢谢
我假设有一些要点需要检查:
- 数据类型:在你的模型中,有
int OrderType
,但在 JS 中你有OrderType: "IR_ID"
,它不是数字,无法映射到int
- 如果您的表单有
RequestVerificationToken
,您应该在请求的 headers 中传递它
- 路由(确保请求 URL 匹配 ASP.NET 预期
P.S。请在评论中添加您的进一步检查建议,以使此答案更适用于许多人。