Salvando dados entre requisições de páginas

 

ASP.NET provê uma nova maneira de preservar a informação ( variáveis) entre as páginas sem ter que usar variáveis de sessão ou cookies. Estou falando da propriedade ViewState do objeto Page.

A propriedade ViewState representa o conteúdo do campo escondido - __VIEWSTATE - e funciona como um dicionário de estado com um par de chaves. Veja um exemplo usando esta propriedade para guardar o número de requisições da página atual:

 

Listagem.

Private Sub Page_Load(ByVal sender As Object,

  ByVal e As EventArgs) Handles MyBase.Load

  'número de requisições para esta página postadas até agora

  Dim contador As Integer

  If not Me.ViewState("contador") Is Nothing Then

    contador = CInt(Me.ViewState("contador") + 1

  End If

  'guarda o valor no dicionário ViewState

  Me.ViewState("contador") = contador

  'para exibir o valor podemos fazer

  label1.Text = contador.ToString

End Sub

 

Conclusões

A propriedade ViewState só funciona se a propriedade EnableViewState for definida como True.