我正在使用 KnockoutJS 的映射插件将我的模型转换为 Knockout 对象。但是在将大的 JSON 对象发送回服务器时,我遇到了问题。我的 Ajax 请求如下:
$.ajax({
url: "/home/DoStuff",
type: "POST",
data: JSON.stringify({ deal: ko.toJS(myObjectViewModel) }),
contentType: "application/json",
dataType: "json",
success: function (result) {
console.log(result);
},
error: function (xhr, status, message) {
console.log(xhr);
}
});
执行这个脚本从未触发控制器中的DoStuff
动作。当我使用Firebug进行检查时,POST请求一直在旋转。在Firebug的Net选项卡中,它说Post Body是159.9 KB,Total Sent是165.1 KB(包括头信息)。如果已发送,为什么它没有命中我的代码断点?但是,当我发送
myObjectViewModel
的一个属性时,它可以成功地进行POST并且一切都很顺利。所以我认为问题出在要发布的数据大小上。因此,我尝试增加了maxJsonLength的值。<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="2147483644"></jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>
这并没有帮助。
我还应该做些什么吗?