Download - Aula 02 view state - session - validações
Programação
Web I
Professora: Ana Paula Citro Fujarra Rodrigues
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=“/>
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
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
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
Exemplo: Fazer um contador que incremente uma variável quando
um botão for clicado.
View State em ASP.NET
Outro código para o mesmo exemplo.
View State em ASP.NET
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
Session em ASP.NET
Lendo o
conteúdo de
variáveis de
sessão
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.
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.
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.
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.
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
Validações em ASP.NET
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.
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.
Validações em ASP.NET
Propriedades:
ErrorMessage, Text,
ControlToValidate: idem ao
anterior.
ValidationExpression: informa a
expressão que será verificada na
validação.
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.
Validações em ASP.NET
Propriedade:
DisplayMode: modo como será
exibidas as mensagens de erro.
Validações em ASP.NET
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#).
Validações em ASP.NET
Propriedade CausesValidation é usada para desativar a
validação em um controle. Defina a propriedade como false.