Artigo da .net Magazine 40 - Otimizando o ViewState de páginas ASP.NET

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Artigo publicado na .net Magazine 40.

capa_NET40_G.gif

Clique aqui para ler todos os artigos desta edição

ASP.NET

Otimizando o ViewState de páginas ASP.NET

 

 

Este artigo discute

Este artigo usa as seguintes tecnologias

·       O que é ViewState;

·       Problemas do ViewState;

·       Eventos de uma página ASP.NET;

·       Armanzenando o ViewState no servidor;

 

Visual Studio 2005, ASP.NET e C#.

 

ViewState é um recurso do ASP.NET que facilita o gerenciamento do estado de uma página Web. O ASP.NET utiliza intensamente o ViewState para conseguir manter o estado de controles entre requisições HTTP. Não fosse isso, tudo o que você configura em um controle (como o valor de uma propriedade) seria perdido a cada requisição.

Podemos trabalhar com o recurso de forma totalmente transparente, já que o ASP.NET faz todo o gerenciamento necessário para salvar e carregar o estado de uma página. Essa facilidade traz um inconveniente: o tamanho (em bytes) da página gerada. Para solucionar esse problema, neste artigo mostrarei como salvar o valor do campo ViewState no servidor, reduzindo consideravelmente o tamanho da página gerada e aumentando a performance da aplicação.

O que é o ViewState?

O ViewState se apresenta no lado cliente na forma de um campo hidden (oculto) e tem a função de armazenar o estado da página. Os valores de propriedades de objetos como Label, TextBox, GridView etc. são salvos nesse campo utilizando uma árvore de objetos e valores. Veja um exemplo na Figura 1 obtido com a ferramenta ViewState Decoder.

 

image003.png

Figura 1. Árvore de objeto e valores do ViewState

Uma vez gerada essa árvore, o .NET Framework utiliza uma classe chamada LosFormatter para efetuar a serialização e retornar a representação na forma de um string que será salva no campo __VIEWSTATE.

Eventos do WebForm

Nossa página ASP.NET gera alguns eventos, vejamos a sequência desses eventos na Tabela 1.

 

Init

LoadViewState

Load

PreRender

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?