ASP.NET MVC: Colocando validação no domínio

Blz pessoal

Neste artigo, mostrarei uma forma simples de validar erros na camada de domínio da aplicação (onde estão as regras de negócio) e tratá-los na camada de apresentação. Com isso, garantimos melhor separação de responsabilidades, com as regras de negócio validadas no domínio e as validações básicas de preenchimento de campos, na camada de apresentação.

Para chegarmos ao nosso objetivo, utilizaremos uma classe de exceções customizada e um método de extensão para popular facilmente o ModelState.

Vamos tomar por exemplo a entidade Cliente. Em nosso domínio, todo cliente deverá ter um nome e um CPF, obrigatoriamente. Sendo assim, poderíamos chamar a validação dessas regras no construtor da classe, como abaixo: Continue lendo »

Anúncios

Atributos de validação personalizados no ASP.NET MVC 3

Blz, galera

Vimos no post anterior (aqui) como fazer validação de dados (client e server-side) no ASP.NET MVC 3.

Continuando no tema, hoje vou mostrar como é simples criar atributos de validação (Data Annotations) personalizados.

Ainda no exemplo dado no post anterior, citado acima, utilizei o atributo [RegularExpression] para validar o formato de e-mail da classe Pessoa. Imagine agora utilizar um atributo personalizado, como [EmailEmFormatoValido], no lugar do [RegularExpression]. Ficaria muito mais claro, além de encapsular a lógica de validação em um único lugar. Continue lendo »

Validação de dados no ASP.NET MVC 3

Blz galera

Todos sabem que validação de dados é algo primordial em nossas aplicações pois garantem consistência dos dados. Devemos sempre ter cuidado com a entrada de dados, verificando o preenchimento obrigatório e a formatação dos campos e aplicando regras de negócio sempre que preciso.

Nest post farei uma introdução sobre validação no ASP.NET MVC 3.

———————
Nota: foi lançada no último dia 13/01 a versão final do ASP.NET MVC 3 (download aqui) e “pra comemorar” vou utilizar neste post sua nova view engine “Razor”. Não entrarei em detalhes do Razor para não fugir do foco. Não se preocupem, não irá influenciar em nada.
———————

Vou usar como exemplo um formulário básico de inscrição em um website, com apenas 2 campos: Nome e E-mail. A proposta é fazê-los obrigatórios e validar o formato do campo E-mail. Continue lendo »