none
Maximum length exceeded RRS feed

  • Pergunta

  • Pessoal tenho uma aplicação que faz uma requisição via Jquery Ajax, essa requisição está retornado um objeto com cerca de 16mil registros e está dando erro de:

    Maximum length exceeded

    Não sei mais o que fazer, fá fiz de td que encontrei na Web, irei postas meu webmethod e o JS.

    [WebMethod(EnableSession = true)]
            public Array Pesquisar(string StrPValue, string fn)
            {
                string clsEntidade = "";
                object ArrayRetorno;
    
                DiconarioFuncao();
    
                funcao.TryGetValue(fn, out clsEntidade);
    
                Type TypeEntidade = Type.GetType(clsEntidade);
    
                if (clsEntidade != "")
                {
                    object entidade = Activator.CreateInstance(TypeEntidade, StrPValue);
                    ArrayRetorno = TypeEntidade.InvokeMember("Pesquisar", BindingFlags.Default | BindingFlags.InvokeMethod, null, entidade, null);
                    return (Array)ArrayRetorno;
                }
    
                return null;
             }

     function Pesquisar()
     {
        var value = RecuperaValoresTela();
        
         $.ajax({
                type: "POST",
                url: "../Services/EndPointService.asmx/Pesquisar" ,
                data: "{ StrPValue:'" + value + "', fn:'"+ funcao +"'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) 
                 {
                 
    				var typeClass = false;
                    var rowTittle = $("#grdListagem tr:nth-child(0)").next().clone();
                    var row = $("#grdListagem tr:nth-child(1)").next().clone();
                    $("#grdListagem tr:nth-child(1)").nextAll().remove();
    
                    var totalColumn = 0;
                    
                    if (data.length == 0 )
                    {
                        $("#grdListagem").append(row);
                        $('#grdListagem').hide();
                      
                    }
                    else
                    {
                        for (index in data)
                        {
                            // Aplica barra de rolagem
                            if (data.length > 5)
                            {
                                $('#Panel1').css({ "overflow-y": "scroll"});
                            }
                            else
                            {
                                $('#Panel1').css({ "overflow-y": ""});
                            }
                    
                            var obj = data[index];
                            var rowClone = $(row).clone();
    
                            totalColumn = 0;
                            
                            for (index2 in obj)
                            {
                                totalColumn++;
                            }
                            // 1 Botão Editar, 2 Botão Excluir 
                            var i = 3;
                            for (index2 in obj)
                            {
                            
                                if (i == 3)//((totalColumn + 2) == i)
                                {
                                    $(rowClone).find("td:nth-child(" + 1 + ")").attr('PK',index2 + ':' + obj[index2]);
                                    $(rowClone).find("td:nth-child(" + 2 + ")").attr('PK',index2 + ':' + obj[index2]);
                                }
                                
                                 $(rowClone).find("td:nth-child("+ i + ")").text(obj[index2]);
                                
    //                          else
    //                          {
    //                          }
    
                                i++;
                            }
        					    					
    					    // INSERI A CLASSE
        					
    					    $(rowClone).removeClass();
        					
    					    if (typeClass == true)
    					    {
    						    $(rowClone).addClass('gridViewAlternating');
    						    typeClass = false;
    					    }
    					    else
    					    {
    					        $(rowClone).addClass('gridViewRow');
    						    typeClass = true;
    					    }
                            
                            $("#grdListagem").append(rowClone);
                            
                         }
                         
                         $('#grdListagem').show();
                    }
                
                },
                error: function(msg)
                {
                    alert('Erro durante a operação.');
                }
              });
              
       
            //alert('Pesquisar clicado');
        return false;
     }



    terça-feira, 6 de novembro de 2012 21:20

Todas as Respostas

  • Existe um limite de 100 kb de retorno em transações deste tipo.

    Você pode aumentar esse número configurando no web.config:

    <configuration>
      <system.web.extensions>
        <scripting>
          <webServices>
            <jsonSerialization maxJsonLength="50000000"/>
          </webServices>
        </scripting>
      </system.web.extensions>
    </configuration>
    http://msdn.microsoft.com/en-us/library/bb763183(v=vs.90).aspx


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    • Sugerido como Resposta Lucas Vandor quarta-feira, 7 de novembro de 2012 10:46
    quarta-feira, 7 de novembro de 2012 00:25