【发布时间】:2020-09-07 18:05:36
【问题描述】:
我正在尝试发送两个对象数组作为发布请求参数。
.cshtml 文件中来自前端的 POST 请求
var PostFunctions = {
PostTest: function () {
const sampleIds = [1, 2, 3];
const sampleStrings = ["1", "2", "3"];
var data = {
'sampleIds': sampleIds,
'sampleStrings': sampleStrings
};
$.ajax({
type: "POST",
url: "/Home/GetSamplesNames",
data: JSON.stringify(data),
async: false,
contentType: "application/json; charset=utf-8",
success: function () {}
});
}
};
控制器中的 GetSamplesNames() 代码
[HttpPost]
public JsonResult GetSamplesNames([FromBody] List<UInt32> sampleIds, [FromBody] List<String> sampleStrings)
{
return new JsonResult(new List<String>() { "test" });
}
但是在调试中两个参数都是空的
我对参数 stringify 的错误是什么?
提前谢谢你。
【问题讨论】:
-
嗨,您是否尝试在调用 get 之前将传统属性设置为 true ? example
-
尝试期待一个模型有两个列表而不是 2 个列表 appart
-
@EugeneD
traditional: true,没有任何改变 :( -
@FloriBruci 使用具有两个列表的类可以正常工作。但我试图让它与两个 List 参数一起工作(因为它更容易阅读和理解)。有可能吗?
-
将它们与 AJAX 分开发送: data : { sampleIds: sampleIds, _sampleStrings: sampleStrings} 请注意“”,在我的情况下,_sampleStrings 应该如何调用它们方法
标签: jquery asp.net-mvc asp.net-core razor asp.net-core-mvc