Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Instância do Obejto DAO.

Dúvida 1: Em alguma parte do código existe uma chamada a ProdutosController();. Isso quer dizer que, antes das modificações, o código utilizava o construtor por default disponibilizado pelo C#!?

Dúvida 2: Depois de mudar o construtor para ProdutosController(ProdutosDAO dao); me parece razoável que em alguma parte de código exista a chamada ao método com a passagem de parâmetro de um ProdutoDAO. Mas a gente não fez isso! Quer dizer, o Ninject é ninja mesmo!? Ele abstrai tudo isso?

Dúvida 3: ProdutosDAO ainda continua precisando de uma session no construtor. Mas como não fizemos essa instância isso me leva a acreditar que o Ninject fez essa ligação de objetos também!?

Não sei se minhas dúvidas ficaram claras. E desde já agradeço!

2 respostas
solução!

Opa Eduardo, vamos lá!

Dúvida 1: Exatamente! Se você não passa informação nenhuma no construtor e não possui construtores declarados na classe, ele utiliza o construtor default sim.

Dúvida 2: Sim! Ele faz toda a mágica por trás para conseguir injetar.

Dúvida 3: É necessário configurar o NInject para que ele consiga recuperar uma instância da sessão. O passo-a-passo é feito aqui.

Abraço!

Obrigado Joviane! Abraço!