在mvc中通过ajax发送大数据时遇到了一个特殊的问题。当我发送大约500个数据时,它的工作正常,但是当它显示错误时,
未捕获的TypeError:无法读取未定义的属性'length'
我不明白为什么会这样 我的代码是
//Reading data from table
var imeiUpload = [];
$('#tblDatas tbody').find("tr").each(function(row, tr) {
imeiUpload.push({
Model: $(tr).find('td:eq(0)').text(),
Color: $(tr).find('td:eq(1)').text(),
Barcode: $(tr).find('td:eq(2)').text(),
Barcode2: $(tr).find('td:eq(3)').text(),
UpdatedBy: $(tr).find('td:eq(4)').text(),
});
});
//then ajax code
$.ajax({
url: ' @Url.Action("InsertImeidata", "Admin")',
type: 'Post',
data: JSON.stringify({ imeiModelUpload: imeiUpload }),
dataType: 'json',
async: false,
contentType: 'application/json',
success: function (data) {
},
error: function (result, textStatus, jqXHR) {
//return false;
}
});
感谢帮助
答案 0 :(得分:0)
最后我发现我的ajax或json代码没有问题,一切都很好,问题是我正在发送的json数据的大小.Asp.net应用程序中有一个默认大小用于发送json数据
所以我发现我必须增加应用程序中json数据的默认大小,因此我添加了以下几行
<appSettings>
<add key="aspnet:MaxJsonDeserializerMembers" value="150000" />
</appSettings>
然后开始工作,现在我可以发送大量的json数组了。