Моя форма на странице слишком велика. Он собирает ежемесячные данные измерений. Пожалуйста, взгляните на образец:Как увеличить ограничение размера json для почтового вызова ASP.NET WebAPI?
{
"Year":2013,
"Month":3,
"Records":[
{"Id":0,"Date":"3/1/2013","RiverSection":5,"UserNumber":56},
{"Id":0,"Date":"3/1/2013","RiverSection":7,"UserNumber":200},
{"Id":0,"Date":"3/1/2013","RiverSection":8,"UserNumber":556},
{"Id":0,"Date":"3/2/2013","RiverSection":5,"UserNumber":56},
{"Id":0,"Date":"3/2/2013","RiverSection":7,"UserNumber":200},
...
...
{"Id":0,"Date":"3/31/2013","RiverSection":7,"UserNumber":200}
}
Поэтому я отправляю большие данные в APICконтроллер.
Я отлично работаю на своей локальной машине, используя сервер отладчика Visual Studio. Но после того, как я загрузил код на сервер (IIS 6). Он дает 500 Internal Server Error
.
Я попытался опубликовать некоторые данные образца и проверил длину сжатого json.
В одном образце набора данных длина моего json равна 5743, и я получил «успех». Но если размер json увеличивается до 17345, я получил 500 Internal Server Error
.
Итак, я попытался увеличить лимит json. База на this post
В Web.Config
:
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="5000000">
</jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>
Но это не работает.
Существует еще один ответ, используя:
var serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue;
Но где мы должны поместить этот код? в Global.asax
?
Обратите внимание, что я использую IIS 6. Так это проблема? Как я могу правильно увеличить предел размера json, чтобы мои данные могли попасть в действие WebApi?
Благодарим за помощь.
Это помогло мне об одной и той же проблемой: http://stackoverflow.com/a/16436700/1740883 – Pnct
Эта [ссылка] [1] может помочь в решении проблемы. Столкнулся с подобной проблемой. [1]: http://stackoverflow.com/questions/12750689/setting-jsonserialization-maxjsonlength-in-asp-net-web-config-gives-500-error/ – Raza