Inquiridor
GridView com Erro quando colocado muitos registros

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:
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 -
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
-
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-pagesAbraç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 -
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 -
-
-
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
-
-
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
-
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 -
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
-
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
-
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
-