MVC - Controller deve conter apenas actions?
05/09/2013
0
Estou estudando MVC e fazendo alguns projetinhos para fixar o conteúdo.
Hoje surgiu a seguinte dúvida: os controllers deve conter apenas Actions? Assim, sempre que eu precisar de um método seu, devo fazer uma chamada a uma action?
Ou eu posso usar um controller como outra classe qualquer, tipo um DAO?
Obrigada.
Rachel Andrade
Posts
12/09/2013
Moisés Gonçalves
Sugiro que você crie seus próprios objetos de negócio se precisar de lógicas que irão ser compartilhadas.
12/09/2013
Rachel Andrade
Onde você acha que eu deveria colocar essas classes? Em uma camada (pasta) DAL ou BLL?
Eu dei uma olhada no modelo DAL, mas não consigo "misturar" com MVC.
12/09/2013
Moisés Gonçalves
Se o objeto for de uso comum, como uma consulta de cep no site dos correios, ou uma validação de strings, eu crio um projeto chamado Utils e adiciono uma referência ao projeto MVC.
Se for um acesso a dados eu utilizo o entity framework para o mapeamento das minhas tabelas do banco. Porém não crio muitas camadas para isso, apenas crio um projeto de entidades, contendo o descrito das entidades e o DbContext referente, depois crio um projeto chamado Models, e nele adiciono objetos de negócio com o sufixo Model.
Uma classe de estoque, por exemplo:
public class Estoque
{
public int Id {get;set;}
public Produto Produto {get;set;}
public int Quantidade {get;set;}
}
E crio um objeto para manupulá-lo.
public class EstoqueModel
{
void AdicionarEstoque(Estoque est);
void DeduzirEstoque(Estoque est);
}
12/09/2013
Rachel Andrade
Obrigada mais uma vez, Moisés.
Podem fechar o tópico, por favor.
12/09/2013
Moisés Gonçalves
Assim você ganha mais portabilidade.
Clique aqui para fazer login e interagir na Comunidade :)