这是我在页面上的js代码:
var data = [
["Benz", "Kia", "Nissan", "Toyota", "Honda"],
["2008", 10, 11, 12, 13],
["2009", 20, 11, 14, 13],
["2010", 30, 15, 12, 13]
];
$.ajax({
url: "/Home/SaveData",
type: "POST",
contentType: 'application/json',
data:JSON.stringify({ data: data }),,
dataType: 'json',
});
以下是我的mvc行动:
[HttpPost]
public string save(string[][] data)
发布了空值,但是,我尝试使用List< string>
而不是string[][]
,将数组的保持字符串作为列表项(而不是列表项的行)收集。 / p>
如何在服务器端绑定这个2D数组?
答案 0 :(得分:0)
在你的ajax中,不要做字符串化,只需尝试将数据作为数据,
$.ajax({
url: "/Home/SaveData",
type: "POST",
contentType: 'application/json',
data: { data: data },
dataType: 'json',
});
如果要对其进行字符串化,则需要覆盖默认模型绑定参考this CustomModelBinder以覆盖模型绑定器。
答案 1 :(得分:0)
更改您的代码,如下所示
var data = [
["Benz", "Kia", "Nissan", "Toyota", "Honda"],
["2008", 10, 11, 12, 13],
["2009", 20, 11, 14, 13],
["2010", 30, 15, 12, 13]
];
$.ajax({
url: "/Home/SaveData",
type: "POST",
contentType: 'application/json',
data:{ data: data },
dataType: 'json',
});
现在数据可以在服务器端绑定。