Używam wtyczki odwzorowania KnockoutJS do konwersji mojego modelu do obiektów Knockout. Ale mam problemy z wysyłaniem dużego obiektu Json z powrotem na serwer. Moje ajax wywołanie wygląda tak:Wysyłanie dużego obiektu JSON do ASP.NET MVC
$.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);
}
});
Wykonanie tego skryptu nie uderza działań w kontrolerze DoStuff
. Kiedy sprawdzam z Firebug, POST po prostu się kręci. W zakładce Net programu Firebug jest napisane, że treść postu to 159,9 KB, a całkowita liczba wysłanych to 165,1 KB (łącznie z nagłówkami). Jeśli został wysłany, dlaczego nie trafia mój punkt przerwania w kod?
Ale gdy zamiast tego wyślę tylko właściwość myObjectViewModel
, poczta będzie w porządku i wszystko się powiedzie. Prowadzi mnie to do wniosku, że problem dotyczy rozmiaru publikowanych danych. Próbowałem więc zwiększyć wartość maxJsonLength.
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="2147483644"></jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>
To nie pomogło.
Czy jest coś jeszcze, co powinienem robić?
Używam IIS Express. Dzięki, spróbowałem obu, ale wciąż nie dostaję się na serwer. – nthpixel