Controlos de
Validação
Controlos de Validação


Verificar se o valor inserido num controlo está
minimamente coerente com a informação
pretendida
Bloquear o processamento da página até que
todos os valores sejam validos.
1
Validação no Cliente e no Servidor

ASP.NET cria processos de
validação no cliente e no
servidor
User Enters
 Validação no Cliente
Data
Error
Dependente do browser
Message
Resposta imediata
Reduz número de pedidos
Valid?
ao servidor
No
 Validação no servidor
Client
Yes
Repete todas as validações
Server
efectuadas no cliente
Permite utilizar recursos
Valid?
No
externos (p.e. bases de
dados)
Yes
Web Application
Processed
2
Controlos de Validação
O ASP.NET fornece controlos de validação
para:






Comparar valores
Comparar com uma fórmula pré-definida
Verificar se um valor pertence a um intervalo
Confrontar com expressões regulares
Exigir preenchimento de informação
Sumariar as validações inseridas numa
página
3
Controlos de Validação
4
Controlos de Validação
1.
1 Colocar o controlo na web form
2 Seleccionar o controlo que se pretende validar
2.
3.
3 Configurar as propriedades de validação
<asp:TextBox id="txtName" runat="server" />
<asp:Type_of_Validator
id="Validator_id"
runat="server"
ControlToValidate="txtName"
ErrorMessage="Message_for_error_summary"
Display="static|dynamic|none"
Text="Text_to_display_by_input_control">
</asp:Type_of_Validator>
5
Controlos de validação


Pode haver vários controlos de validação afectos a
um mesmo objecto
Somente o RequiredFieldValidator verifica se a
informação está preenchida
6
Controlos de Validação

RequiredFieldValidator
InitialValue

CompareValidator
ValueToCompare
or ControlToCompare
Type
Operator

RangeValidator
MinimumValue
MaximumValue
Type
7
Controlos de Validação

RegularExpressionValidator
Permite
confrontar valores com expressões
regulares
O VS .NET já inclui algumas expressões
regulares (p.e: emails)
<asp:RegularExpressionValidator …
ControlToValidate=“Email"…
ValidationExpression=
"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
>*</asp:RegularExpressionValidator >
8
Controlos de Validação

CustomValidator

Permite validar no cliente, no servidor, ou em ambos
ClientValidationFunction
OnServerValidate
<asp:RequiredFieldValidator id="txtNameValidator"
runat="server"
ControlToValidate="txtOddNum"
ClientValidationFunction="ClientValidateName"
OnServerValidate="ServerValidateName"
ErrorMessage="You must enter an odd number"
display="dynamic" Text="*">
</asp:RequiredFieldValidator>
9
Controlos de Validação

ValidationSummary

Apresenta as mensagens de erro de todos os
controlos de validação da página
<asp:ValidationSummary id="valSummary"
runat="server"
HeaderText="These errors were found:"
ShowSummary="True"
DisplayMode="List"/>
10
Propriedade Page.IsValid
Verifica o estado de todos os controlos de
validação inseridos na página
private void cmdSubmit_Click(object s,
System.EventArgs e)
{ if (Page.IsValid)
{
Message.Text = "Page is Valid!";
// Actualização de uma base de dados ou
// outra tarefa sensivel
}
}
11
Download

Controlos de Validação