Olá Pessoal,
Hoje vou explicar como diminuirmos um tamanho da página trocando a forma como é armazenado um mecanismo chamado ViewState no ASP.Net
Como vocês devem saber, as nossas páginas ASP.NET armazenam os estatos dos componentes no HTML gerado para o cliente, isto permite que os controles sejam preenchidos e seus valores possam ser acessados em nosso código .cs. É simplesmente uma maravilha, porém, caso tenhamos muitas informações nestes controles, nosso viewstate também crescerá e, como consequência, a página gerada para o usuário também.
Já cheguei a pegar projetos que consegui economizar mais de 70Kb só com informações de viewstate. Mas, como eu consegui isto? Armazenando o nosso viewstate no CACHE ou na Sessão!
No código a seguir, a classe, baseada nos parâmetros de configuração no web.config, irá armazenar nosso viewstate no CACHE ou na SESSION (recomendo colocá-los na SESSION).
Primeiro, você deve adicionar as seguintes configurações dentro do seu Web.config (lembre-se de colocá-las dentro da tag <appSettings>aqui</appSettings>.
Isto será necessário em nossa classe. Explico cada linha dentro do código.
Crie uma classe dentro do projeto Web, provavelmente o ASP.Net (se você não tiver) irá perguntar se deseja criar uma pasta chamada "App_Code". Diga sim. Esta nova classe será criada dentro desta pasta.
O código dela segue:
Pronto. Criado a classe, você deverá alterar suas páginas para não mais herdar da classe
System.Web.UI.Page, mas sim da sua nova classe ViewStatePage.
Feito isto, todo o resto do processo será automático e, caso tenha curiosidade, poderá ver que seu HTML terá um tamanho bastante reduzido, comparado a quando era antes.
Caso deseje não mais utilizar este mecanismo, basta setar a configuração como False no seu parâmetro ServerSideViewState do Web.config.
Tem também uma outra forma de fazer este processo de economia do ViewState, é compactando ele. Veja como compactar um viewstate no ASP.Net neste artigo.
Bom, por hoje é só pessoal.
Até a próxima.

![]() |
CodigoFonte.net » CodigoFonte.eti.br » Compre De Tudo » Meu Mural » Competiva - Criação de Sites » Todos os Direitos Reservados © 2002/2010 |