Olá pessoal, vamos continuar nossa séria sobre o XAF.
Se não leu ainda, veja nosso artigo anterior para melhor entender o que estamos falando no link: XAF – Introdução
Neste artigo vamos tratar do assunto validação, como nós criamos um projeto bem simples no artigo anterior que é um cadastro de pessoas e neste caso precisaremos de indicar campos obrigatórios como por exemplo o ‘Nome’ da pessoa.
Vamos ver como funciona isso no XAF!?
Em cada módulo do XAF existe um arquivo ‘Module.cs’ (isto no projeto base .Module, nos demais há uma sigla anterior ao nome) que é usado para fazer a configuração do módulo em questão, aqui então já vale entender porque em nosso exemplo foi criada 1 (uma) solução com 5 (cinco) projetos, no gráfico abaixo explicamos os relacionamentos entre eles e o que é cada um.
- Projeto.Module = Contém a implementação as entidades de negócio e suas regras gerais
- Projeto.Module.Web = Mantêm a implementação das regras específicas para o projeto Web
- Projeto.Module.Win = Mantêm a implementação das regras específicas para o projeto Windows
- Projeto.Web = Projeto final em Asp.Net
- Projeto.Win = Projeto final em WindowsForms
Voltando a questão, você deve abrir o arquivo ‘Module.cs’ no projeto base .Module, e através da toolbox incluir o módulo ‘ValitadionModule’ conforme a imagem a seguir:
Com este módulo adicionado podemos então criar nossas regras de validação. Isso pode ser feito de duas maneiras, através do código e também com o editor de modelo (no arquivo Model.xafml), no entanto apresentar aqui como fazer através do código que a meu ver fica mais organizado.
Então ao expandir o arquivo Pessoa.bo temos o arquivo ‘Pessoa.bo.designer.cs’ com a especificação dos atributos da classe e precisaremos adicionar então a validação. Veja abaixo o que precisamos fazer no código para incluir o que precisamos.
Após implementar os passos anteriores e executar sua aplicação já teremos a regra de validação aplicada para os módulos Web e Windows. Veja abaixo como fica a interface validando o atributo ‘Nome’ na aplicação.
Isso é só um pequeno exemplo do que é possível fazer com este módulo de validação. É bastante simples escrever uma regra e indicar onde e quando ela deve ser aplicada. Também podemos colocar controle de aparência condicionado a um valor de atributo qualquer, iremos ver isso no próximo artigo.
Até a próxima.