Validação: Fica aonde?

09/09/2011

0

Estou desenvolvendo uma pequena aplicação 3 camadas em C#: Gerenciamento de contatos.
Tenho uma pequena dúvida em relação à MVC e validação.
Eu tenho a camada DAL, que acessa os dados, tenho a tal BLL, que quase não tem nenhuma regra, serve apenas como fluxo mesmo, e tenho a apresentação. Na library de acesso a dados, tenho duas classes que são apenas propriedades automaticas para armazenar e retornar valores, tanto que é que eu referenciei ela para o datasource do DataGridView.
Então, eu estava atualizando os valores preenchidos nos campos na camada de apresentação e jogando para aqueles campos que serve apenas como armazenamento ou retorno, dai eu executo alguma ação na camada de negócios e ai passa para a de acesso a dados, mas existe alguns campos, que são do tipo inteiro, ou datetime. O que aconteceria se um usuário colocasse um "a" num campo idade por exemplo? não tem como fazer esse tipo de conversão, é aí que entra a validação, mas a validação deveria ser na camada de negócios não é? mas eu já to inserindo esses valores na camada de apresentação, como que faz?

Como faz pouco tempo que eu pratico programação, e esse projetinho é apenas para praticar, fiz um "remendo" na camada de apresentação mesmo, mas o código está horrivel, se um dia precisasse de fazer uma manutenção, daria muito dor de cabeça, tanto é que essa forma que eu usei não faz parte do padrão 3 camadas, mas o projeto é apenas para praticar.

O que eu faço? preciso atualizar os campos de armazenamento e ao mesmo tempo validando os valores preenchidos neles. Qual é a melhor pratica? o que eu devo fazer?

Vou deixar aqui um link do meu projeto pra se alguem quiser analisar pra fica melhor...
Nem tentem executar, pois não vai abrir a connection por causa da connection string.
Percebam que a camada de apresentação ta muito "zuada"

http://www.megaupload.com/?d=VNTX5X5B

Desculpa pelo tamanho do topico...

Por favor, quem puder analisar e ve se tem algo incorreto, fico feliz desde já...

Vai Saber

Vai Saber

Responder

Posts

13/09/2011

Vai Saber

desculpa, acho que fui muito especifico..
o que eu preciso, é de alguma forma passar os valores para a class de negocio para dai eu poder validar esses valores lá.. to trabalhando numa aplicação em 3 camadas
entendem ?
alguem me ajuda
Responder

14/09/2011

Rodrigo Odasaki

Fernando, 

Tenho certeza se você assistir este curso: Crie sistemas N camadas em "Cursos de .net" você vai entender como funciona a validação nas camadas.
Responder

15/09/2011

Vai Saber

na verdade, fui me informar, mvc é bem diferente de 3 camadas ou n-camadas to mto confuso com tudo isso, mas eu to usando esse 3 camadas eu acho, e é windows applicatio
Responder

15/09/2011

Vai Saber

Fernando, 

Tenho certeza se você assistir este curso: Crie sistemas N camadas em "Cursos de .net" você vai entender como funciona a validação nas camadas.


esse curso é aplicação em asp.net, sei q é mto parecido, mas sei la, to usando windows application,
Responder

22/09/2011

Leandro Andrade

Olá amigo tudo bem?

Vamos lá vou tentar lhe ajudar.

Você pode colocar toda a validadação dentro da BLL, deve criar uma nova window para exibir os erros e também uma classe para transportar os mesmos.

Sendo assim quando a BLL encontrar um determinado erro ela seta na classe “Erro” e retorna false, sua IHM irá chamar os métodos de outra maneira algo parecido com isso:

If(!contatos.AlterarContatos(fields))
{
windowErro = new windowErro();
windowErro.ShowDialog();
}


Espero que ajude você,

Grande abraço,
Léo Andrade
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar