none
GridView com Erro quando colocado muitos registros RRS feed

  • Pergunta

  • Estou com um problema que não consigo resolver de jeito nenhum estou com uma página que armazenas dados em um banco de dados e coloca esses valores em uma GridView, mas o problema é que são muitos valores por volta de 100 mil registros que são trazidos do banco de dados, mesmo usando paginação quando eu vou mudar de página da erro de página não encontrada como segue as figuras abaixo:

    segunda-feira, 8 de outubro de 2012 17:35

Todas as Respostas

  • Vai nas opções do internet explorer e desmarca a opção "Mostrar erros amigáveis" aí ele vai aparecer o erro na tela.

    Cola o erro aqui pra ajudar.

    Abraços,


    André Baltieri
    MTAC – Microsoft Technical Audience Contributor

    Twitter: @andrebaltieri
    Blog: http://andrebaltieri.net

    segunda-feira, 8 de outubro de 2012 18:01
  • Aqui o erro que da é esse mesmo nessa página está desabilitado o que você pediu para desabilitar mas segue ai uma parte do código fonte da gridview acho que a tag <input type="hidden" name="_VIEWSTATE" id="_VIEWSTATE" value="

    O value desta página está muito grande por causa do número gigantesco de dados vindos do banco de dados eu queria saber como resolver este problema

    quinta-feira, 11 de outubro de 2012 12:22
  • Cara*&#ˆ$@*#ˆ*@#ˆ

    Duro que desabilitar o ViewState você terá que fazer algumas coisas manuais (Paginação, Ordenação, etc).

    Aqui mostra como desabilitar o ViewState
    http://stackoverflow.com/questions/2432972/completely-remove-viewstate-for-specific-pages

    Abraços,


    Se sua questão foi respondida, favor marcar.

    André Baltieri
    MTAC – Microsoft Technical Audience Contributor

    Twitter: @andrebaltieri
    Blog: http://andrebaltieri.net
    Site: http://sismat.com.br

    quinta-feira, 11 de outubro de 2012 12:32
  • Outra coisa, pagina isso!

    Principalmente os registros do banco


    Se sua questão foi respondida, favor marcar.

    André Baltieri
    MTAC – Microsoft Technical Audience Contributor

    Twitter: @andrebaltieri
    Blog: http://andrebaltieri.net
    Site: http://sismat.com.br

    quinta-feira, 11 de outubro de 2012 12:43
  • Quantos registros por página você está trazendo?
    quinta-feira, 11 de outubro de 2012 15:03
  • André Baltieri vou da uma olhada nisso ae que você me passou se tiver tudo certo eu marco como respondida. 

    Eu estou trazendo 100 mil registros +-, mas tente a aumenta cada vez mais por isso acho que a página ta saindo do ar.

    quinta-feira, 11 de outubro de 2012 15:22
  • Dei uma olhada na sua solução e ela só faz aparecer a página abaixo, ou seja esse código quer dizer que não criada uma conexão com o banco de dados então ela foi encerrada  foi incluído na página o comando abaixo 

       Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
            Dim sb As StringBuilder = New StringBuilder
            Dim sw As StringWriter = New StringWriter(sb)
            Dim hWriter As HtmlTextWriter = New HtmlTextWriter(sw)
            MyBase.Render(hWriter)
            Dim html As String = sb.ToString
            html = Regex.Replace(html, "<input[^>]*id=\""(__VIEWSTATE)\""[^>]*>", String.Empty, RegexOptions.IgnoreCase)
            writer.Write(html)
        End Sub
    A conexão ainda está sendo perdida por causa do grande volume de dados

    quinta-feira, 11 de outubro de 2012 16:04
  • Tenta paginar, acho que resolve.

    Abraços,


    Se sua questão foi respondida, favor marcar.

    André Baltieri
    MTAC – Microsoft Technical Audience Contributor

    Twitter: @andrebaltieri
    Blog: http://andrebaltieri.net
    Site: http://sismat.com.br

    quinta-feira, 11 de outubro de 2012 16:11
  • não pior que já esta paginado desse jeito que ta paginado vou manda o código 

    grdRecebimento.AllowPaging = True
                grdRecebimento.PageSize = 100
    
                grdRecebimento.DataSource = dt
                grdRecebimento.DataBind()
                ViewState.Remove("dt")
                ViewState("dt") = dt

    Mas ta paginado usando a grid mesmo, mas continua dando o erro e aquele código fonte gigantesco 

    quinta-feira, 11 de outubro de 2012 16:16
  • Se colocar um PageSize = 10?

    Ainda gera aquele código todo?

    Se for o caso, desabilita a ViewState nessa página. :S

    Abraços,


    Se sua questão foi respondida, favor marcar.

    André Baltieri
    MTAC – Microsoft Technical Audience Contributor

    Twitter: @andrebaltieri
    Blog: http://andrebaltieri.net
    Site: http://sismat.com.br

    quinta-feira, 11 de outubro de 2012 16:21
  • Não adianta botei 10 continua a página caindo e o mesmo código fonte gigantesco. Eu já tentei desabilitar o ViewState com esse código dentro da página e simplismente da erro na página 

       Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
            Dim sb As StringBuilder = New StringBuilder
            Dim sw As StringWriter = New StringWriter(sb)
            Dim hWriter As HtmlTextWriter = New HtmlTextWriter(sw)
            MyBase.Render(hWriter)
            Dim html As String = sb.ToString
            html = Regex.Replace(html, "<input[^>]*id=\""(__VIEWSTATE)\""[^>]*>", String.Empty, RegexOptions.IgnoreCase)
            writer.Write(html)
        End Sub

    quinta-feira, 11 de outubro de 2012 16:27
  • Achei a solução quem tiver com um problema parecido leia este link abaixo muito bom

    http://www.bileras.com.br/compressao-de-viewstate/

    Esse link monstra como com-prensa o ViewState.

    Vlww a todos pela ajuda me deram uma luz para eu chegar a solução que funcionou

    terça-feira, 16 de outubro de 2012 15:42
  • Somente lembrando que mesmo que a compressão do ViewState tenha resolvido, a melhor solução seria realizar uma paginação customizada pelo banco de dados. Desta forma, voce traria para o seu GridView somente os registros da página que voce quer visualizar e não os 100mil registros.

    Além de resolver o problema relatado voce vai notar que sua aplicação vai ficar incrivelmente mais rápida, quando voce paginar.

    Caso tenha interesse em dar uma pesquisada, seguem alguns links de referencia

    http://www.codeproject.com/Articles/410733/Custom-paging-with-ASP-NET-GridView

    http://www.codeproject.com/Articles/16238/GridView-Custom-Paging


    Washington Luíz | MCP, MCTS

    • Sugerido como Resposta Danimar Ribeiro sexta-feira, 19 de outubro de 2012 02:44
    quinta-feira, 18 de outubro de 2012 20:44
  • O Washington está totalmente certo.

     E o erro que você passou não tem nada relacionado com o ViewState.

    sexta-feira, 19 de outubro de 2012 02:45