Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
563
Assunto : ASP.NET
Titulo: Controlando detalhadamente o processo de validação

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon




O funcionamento dos controles de validação certamente vocês já viram. Se não na prática certamente em eventos.

Mas vejamos algumas situações um pouco diferentes. Digamos que tenhamos em nosso formulário não apenas o botão gravar, mas também um botão calcular que faz um cálculo qualquer. O botão gravar deverá validar todos os dados, porém o calcular não. Como resolvemos ?

Talvez já tenham passado por uma situação assim. Basta desativar o causesValidation no botão calcular e ele não provocará o processo de validação.

Vamos então complicar um pouquinho : E se esse botão calcular realmente não precisar da validação de tudo, mas precisar da validação feita por um ou dois dos controles de validação. Como resolver isso ?

Cada controle de validação tem individualmente o método validate e a propriedade isValid. Assim podemos, no servidor, disparar uma validação de um componente específico e verificar se o componente passa pela validação. Desta forma no código do click do botão calcular podemos chamar o validate dos controles de validação específicos que ele precisa e verificar se são válidos.

Se não forem, o calcular não executa o que tem que fazer. Ótimo. Se as mensagens que estejamos exibindo para o usuário estiverem configuradas no próprio controle de validação ou em um validationSummary com showSummary true o problema acaba aqui.

Mas se as mensagens estiverem configuradas para serem exibidas por um ValidationSummary com o showSummary como false (showMessage true, exibindo um alert) então temos mais um problema : Quando configurado para exibir alert, o ValidationSummary não reconhece esse tipo de validação, pedida via código, e não exibe mensagem alguma.

Para isso existem poucas soluções :

Pode-se inserir dois summarys validators e controlar o visible dos dois de forma que um apenas seja exibido quando estiver fazendo a validação do calcular e outro a validação do gravar

OU

Utilizar uma mensagem de aviso personalizada.


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 10/16/2006 6:19:00 PM
nome: Carla
email: carlitchacmc@yahoo.com.br
comentário:
Olá!

Estava tendo algumas dúvidas com relação ao ValidationSummary e este artigo trata exatamente de algumas delas, porém ainda tenho outra dúvida:
- se você quiser colocar erros do seu "código" no sumário de validação?

Caso não seja possível, como poderia mostrar uma mensagem de erro do código na minha página web?

Por exemplo: tenho uma página de cadastro com campos para validar telefone, email etc e um validationSummary com todos essas validações, porém se ocorrer um erro na hora do cadastro(tenho uma 'throw new ArgumentException("CNPJ inválido!")' como posso colocar essa mensagem na minha página, no mesmo lugar onde aparece o meu valitadionSummary??

Bom, já procurei como fazer isso em muitos sites e não encontro como, por isso agradeceria se pudesse me ajudar!

Carla


 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br