длина строки превышает значение, заданное для свойства maxJsonLength

У меня есть веб-служба .Net (.asmx), который вернет строку Json моему клиенту. Однако некоторые из моих данных действительно велики, и я иногда получаю эту ошибку.

длина строки превышает значение, заданное для свойства maxJsonLength.

Я изменил свойство maxJsonLength на 2147483644, но оно все еще не работает. Пожалуйста помочь... Спасибо.

 <system.web.extensions>
    <scripting>
      <webServices>
        <jsonSerialization maxJsonLength="2147483644"/>
      </webServices>
    </scripting>
  </system.web.extensions>



[WebMethod]
        [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
        public void GetData(string login)
        {
            // throw an error on this line...
            string result = new JavaScriptSerializer().Serialize(service.GetData(login));


            Context.Response.Write(result);
        }

1 ответов


благодаря предложению Эда Гиббса и @NextInLine. Я сделал исправление, как показано ниже, и он работает как шарм. Я также удалил "систему".сеть.extensions " часть вдали от моей сети.config

[WebMethod]
        [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
        public void GetData(string login)
        {

            // when the amount of data return is huge
            var serializer = new JavaScriptSerializer();

            // we need to do this.
            serializer.MaxJsonLength = Int32.MaxValue;


            var result = serializer.Serialize(service.GetData(login));


            Context.Response.Write(result);
        }