Aula 02 view state - session - validações

23
Programação Web I Professora: Ana Paula Citro Fujarra Rodrigues

Transcript of Aula 02 view state - session - validações

Page 1: Aula 02   view state - session - validações

Programação

Web I

Professora: Ana Paula Citro Fujarra Rodrigues

Page 2: Aula 02   view state - session - validações

View State em ASP.NET

1 – View State

View State é o metodo padrão usado pelo ASP.NET para

preservar valores de páginas e controles entre requisições. Quando a

página ASP.NET é carregada no browser, o código HTML resultante

contém um campo oculto com uma string codificada como base64.

Exemplo:

<input type=“hidden” name=”_VIEWSTATE” id=“_VIEWSTATE”

value=“wEPDwUKMTIxNDIyOTMOMmRkZfHwakhgxv7xU6icFDKQ5ox6VI=“/>

Page 3: Aula 02   view state - session - validações

Tipos de dados que podem ser armazenados num view state:

• Strings

• Inteiros

• Valores Booleanos

• Objetos Array

• Objetos ArrayList

• Objetos Hashtable

É possível armazenar outros tipos, desde que estejam serializados, ou

seja, a classe compilada precisa ser marcada com o atributo

Serializable.

View State em ASP.NET

Page 4: Aula 02   view state - session - validações

Os web server controls usam a propriedade EnableViewState para

preservar valores entre requisições HTTP. Para aumentar a performance da

aplicação web, devemos definir a propriedade EnableViewState como

true somente quando estritamente necessário.

1.1 – Gravar Valores com View State

Num view state devem ser armazenadas informações que precisam ser

preservadas entre requisições. Quando o usuário seleciona um item num

controle CheckBox e clica num botão de comando, por exemplo, a página é

recarregada, mas o valor selecionado é preservado.

ou

View State em ASP.NET

Page 5: Aula 02   view state - session - validações

OBS.: As informações de um view state são armazenadas num

campo oculto, por isso podem ser alteradas ou falsificadas por

um usuário mal-intencionado. Não armazene informações

sigilosas.

1.2 – Lendo valores de um view state

Ler o valor armazenado é simples e fácil, mas é necessário

realizar uma conversão explícita. Exemplo:

View State em ASP.NET

Page 6: Aula 02   view state - session - validações

Exemplo: Fazer um contador que incremente uma variável quando

um botão for clicado.

View State em ASP.NET

Page 7: Aula 02   view state - session - validações

Outro código para o mesmo exemplo.

View State em ASP.NET

Page 8: Aula 02   view state - session - validações

Session em ASP.NET

As variáveis de sessão armazenam, por padrão, o seu conteúdo na

memória do servidor web, mas é possível definir um servidor

próprio ou o SQL Server para esta função.

O estado de sessão do ASP.NET armazena e recupera informações

sobre a navegação do usuário nas páginas de uma aplicação web. O

estado da sessão é manipulado com variáveis de sessão.

Uma variável de sessão possui valores únicos e acessíveis apenas

para um determinado usuário.

Nome da

variável

Conteúdo da

variável

Armazenando

variáveis em uma

sessão

Page 9: Aula 02   view state - session - validações

Session em ASP.NET

Lendo o

conteúdo de

variáveis de

sessão

Page 10: Aula 02   view state - session - validações

Session em ASP.NET

Quando acessamos um web site, uma nova sessão é criada, e o

usuário recebe um identificador de sessão único. Este identificador

é transmitido entre o browser e o servidor na forma de cookie ou é

anexado à URL do web site. Por padrão é armazenado e transmitido

na forma de cookie.

Uma sessão é única e é utilizada para restringir informações entre

usuários.

O identificador de sessão pode ser lido com a propriedade

SessioID.

Page 11: Aula 02   view state - session - validações

Session em ASP.NET

Para anexar o identificador de sessão à URL do web site, devemos

alterar o arquivo web.config da aplicação. O atributo

cookieless da seção sessionState deve ser true.

Page 12: Aula 02   view state - session - validações

Session em ASP.NET

Esta abordagem deve ser evitada, ou seja, devemos armazenar o

identificador de sessão num cookie. Quando o identificador de

sessão é armazenado na URL, é possível ter acesso a informações

de outro usuário, por exemplo, com um mecanismo de busca.

O atributo regenerateExpiredSessionId tenta minimizar este

problema criando um novo identificador que já expirou. Por padrão

o atributo cookieless é falso em todas as aplicações ASP.NET.

Page 13: Aula 02   view state - session - validações

Session em ASP.NET

O tempo máximo de uma sessão é de 20 minutos. O tempo máximo

de cada sessão pode ser definido pela propriedade Timeout. O

valor é definido em minutos e deve ser no máximo 525.600 minutos

(1 ano)

Para encerrar imediatamente uma sessão e criar uma nova, use o

método Abandon.

Page 14: Aula 02   view state - session - validações

Validações em ASP.NET

Controles de validação podem ser usados para validar a entrada

dada pelo usuário em um formulário da Web.

Campos Obrigatórios

Intervalo de Valores

Expressões Regulares

Comparando Valores

Comparando Valores (BD)

Exibir Mensagens Centralizadas

Page 15: Aula 02   view state - session - validações

Validações em ASP.NET

Page 16: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedades:

ErrorMessage: utilizada para a

mensagem de Erro, esta irá

aparecer no ValidationSummary.

Text: utilizada para a informação

que ficará em frente ao objeto

validado.

ControlToValidate: utilizada para

informar qual o objeto que será

validado.

Page 17: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedades:

ErrorMessage, Text,

ControlToValidate: idem ao

anterior.

MaximumValue e

MinimumValue: informar o

valores do intervalo a ser validado.

Type: tipo da informação que será

validada.

Page 18: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedades:

ErrorMessage, Text,

ControlToValidate: idem ao

anterior.

ValidationExpression: informa a

expressão que será verificada na

validação.

Page 19: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedades:

ErrorMessage, Text,

ControlToValidate: idem ao

anterior.

ControlToCompare: informa o

objeto que será comparado com o

objeto do ControlToValidate.

Operator: operador para a

comparação.

Page 20: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedade:

DisplayMode: modo como será

exibidas as mensagens de erro.

Page 21: Aula 02   view state - session - validações

Validações em ASP.NET

Page 22: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedade ValidationGroup é usada para criar grupos de

validações, de modo que cada grupo realize validações

independentes de outros grupos. Defina a propriedade com o nome

do grupo a que pertence.

Propriedade Display é usada para controlar como a mensagem de

erro aparece no browser. None – aparece somente no

ValidationSummary; Static – layout fixo; Dynamic – exibida

de forma dinâmica (via código C#).

Page 23: Aula 02   view state - session - validações

Validações em ASP.NET

Propriedade CausesValidation é usada para desativar a

validação em um controle. Defina a propriedade como false.