Tecnologia para Web Controles de Validação Enrique Pimentel Leite de Oliveira...
Transcript of Tecnologia para Web Controles de Validação Enrique Pimentel Leite de Oliveira...
Introdução• Frequentemente necessitamos validar dados fornecidos pelo
usuário, seja em uma página de login, de cadastro ou em uma página que envia sua senha por e-mail.
• Embora não seja possível garantir a precisão das informações fornecidas, ao possibilitar que o usuário cadastre dados em um site, deseja-se que as informações sejam ao menos válidas.
• Por exemplo: Ao preencher um campo e-mail, deseja-se que o usuário digite um e-mail válido e não seu telefone, ou qualquer outra coisa.
Introdução• Existem diferentes maneiras de validar essas informações, as mais
comuns:– Submeter os dados digitados para o servidor e realizar a validação– Utilizar JavaScript (desenvolvido manualmente)
• Visando facilitar esse trabalho de validação, o ASP.NET 2.0 inclui 6 controles que possibilitam gerenciar as informações digitadas:– RequiredFieldValidator, RangeValidator, RegularExpressionValidator,
CompareValidator, CustomValidator e ValitationSummary
Controles de Validação• RequiredFieldValidator
– Garante que um campo seja preenchido. Utilizado quando o preenchimento do campo é obrigatório
• RangeValidator– Garante que o valor de um campo esteja dentro de um intervalo
definido.• RegularExpressionValidator
– Utilizam expressão regular para validar um determinado campo. Utilizado para validar um campo de e-mail, por exemplo.
• CompareValidator– Valida os dados de um campo, através da comparação com um
valor definido, ou com outro campo.
Controles de validação• CustomValidator
– Possibilita que o programador defina sua própria função de validação, do lado servidor e do cliente.
• ValitationSummary– Exibe um resumo de todos os erros de
validação de uma página.
Controles de Validação• Funcionam basicamente da mesma forma:
1. Definir o controle que será validado
2. Colocar o(s) validador(es) na posição da página onde deseja
3. Alterar a propriedade ControlToValidade a qual identifica o controle que será validado
4. Alterar a propriedade ErrorMessage, que deverá conter a mensagem que deseja exibir
Onde utilizar o validadores?• Os validadores do ASP.NET podem ser utilizados
com diversos controles entre eles:– TextBox,
– ListBox,
– DropDownList,
– RadioButtonList,
– HtmlInputText,
– HtmlTextArea, etc
Como a validação da página funciona
• A validação fornecida pelo ASP.NET fornece suporte a dois tipos de validação:– Lado cliente (JavaScript)– Lado servidor (fornece essa validação para clientes
que não possuem suporte a JavaScript e também para garantir que as informações não foram modificadas ou corrompidas durante a transmissão para o servidor)
Validação do lado cliente• Os validadores do ASP.NET realizam a validação do lado
cliente vinculando um arquivo JavaScript denominado WebUIValidation.js ao código HTML enviado ao navegador
• Esse arquivo, contém as funções de validação necessárias à validação da página
• Ao tentar submeter a página para o servidor, as funções JavaScript validam os controles e caso exista algum problema, cancela a submissão, caso contrário permite o envio.
• Porém nem todos os clientes possuem suporte a JavaScritp, nesse caso devem contar com a validação do lado servidor.
Validação do lado servidor• Ao submeter a página para o servidor, inicia-se a validação
do lado servidor• Essa validação é gerenciada pela infra-estrutura na classe
Page, que executa o método Validate() de cada controle de validação para verificar se as informações são válidas. Esse processo é executado após o método Page_Load da página
• Caso seja necessário verificar a confiabilidade dos dados no código C#, é possível utilizar a propriedade IsValid da página
Outras propriedades dos validadores
• A propriedade Display que recebe o valores Static ou Dynamic faz com que a mensagem do controle mesmo que invisível ocupe espaço no layout da página (quando definido como Static) ou não ocupe espaço quando invisível (quando definido como Dynamic)
• Outra propriedade interessante dos controle de validação é a ValidationGroup que possibilita agrupar controles de validação, ou seja, é possível definir grupos de validação e acionar somente alguns grupos em determinado momento.
Exercícios• Crair uma página para validar o nome de
usuário e senha de uma página de login
• Criar uma página para cadastro de contatos, a qual valide todos os campos digitados.
Bibliografia• http://kleizer.wordpress.com/2006/06/29/controles-de-
validacao/• Shepherd, George. Microsoft ASP.NET 2.0 Passo a Passo.
Bookman. 2005.• http://www.devhood.com/Tutorials/tutorial_details.aspx?
tutorial_id=46• http://www.codersource.net/asp_net_validation_controls.aspx• http://www.radsoftware.com.au/articles/regexlearnsyntax.aspx• http://guia-er.sourceforge.net/guia-er-40.html