2013-11-22 2 views
2

«" "" "" "" "" "Ошибка при сериализации или десериализации с использованием JSON JavaScriptSerializer. Длина строки превышает значение установленное на свойстве maxJsonLength "" StackTrace. ":" В System.Web.Script.Serialization.JavaScriptSerializer.Serialize (Object OBJ, StringBuilder выход, SerializationFormat serializationFormat) \ г \ п на System.Web.Script.Serialization.JavaScriptSerializer.Serialize (Object OBJ, SerializationFormat serializationFormat) \ г \ п на System.Web.Script.Services.RestHandler.InvokeMethod (HttpContext контекста, WebServiceMethodData methodData, IDictionary`2 rawParams) \ r \ n at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall (HttpContext context, WebServiceMethodData methodData)»,„ExceptionType“:„System.InvalidOperationException“„“„“„“„“„“„“„“„“Ошибка при сериализации или десериализации с использованием JSON JavaScriptSerializer. Длина строки превышает

Я пробовал все ответы, но до сих пор в настоящее время я получаю эту ошибку, пожалуйста, кто-нибудь помочь.

+0

Вы действительно попытались увеличить значение свойства 'maxJsonLength'? –

+0

https://stackoverflow.com/questions/21109328/ef-to-ajax-string-exceeds-maxjsonlength-with-less-than-250kb/21109329#21109329 Следуйте за этим. Это работает для меня. –

+0

Вы можете взглянуть на [Длина строки превышает значение, установленное в свойстве maxJsonLength. в MVC3] (http: // stackoverflow.com/questions/19108743/the-length-of-the-string-превышает-the-value-set-on-the-maxjsonlength-property-in/35025467 # 35025467) –

ответ

1

Знайте, что значение свойства MaxJsonLength применяется только при явным создании экземпляра класса JavaScriptSerializer.

1

От MSDN article от fejescoco вы должны указать максимальную длину в вашей конфигурации.

<configuration> 
    <system.web.extensions> 
    <scripting> 
     <webServices> 
     <jsonSerialization maxJsonLength="9001"/> 
     </webServices> 
    </scripting> 
    </system.web.extensions> 
</configuration> 
+0

Использование старого ASP.NET WebMethod, I получил эту ошибку, и это было решение, которое сработало для меня. –

0

У нас был объект json, возвращающийся из веб-службы. код был ниже

JavaScriptSerializer s = new JavaScriptSerializer(); 
. 
. 
. 
    return s.Serialize(bomDataObject); 

У нас было около 5000+ строк, что вызывало ошибку выше в сериализации.

посетили следующие ссылки, чтобы получить представление о пределах максимального размера: JSON

http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer%28v=vs.110%29.aspx

http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.maxjsonlength%28v=vs.110%29.aspx

Максимальная длина строки JSON. Значение по умолчанию - 2097152 символов, что эквивалентно 4 МБ строковых данных Юникода. Мы установили код для работы над нашим сценарием для больших данных ... конечно добавляет нагрузку на сервер и сеть, чтобы загружать данные, но это огромные данные, и нам нужно их сместить!

JavaScriptSerializer s = new JavaScriptSerializer(); 
s.MaxJsonLength = int.MaxValue; 
. 
. 
. 
. 
. 

return s.Serialize(bomDataObject);. 
Смежные вопросы