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

Erro depois que coloco a injeçao de ProdutoRepository

Olá, depois da aula em que se cria e injeta o IProdutoRepository em startup.cs, quando rodo, recebo um erro no: serviceProvider.GetService().InicializaDB();

erro: Unable to resolve service for type 'CasaDoCodigo.Repositories.ProdutoRepository' while attempting to activate 'CasaDoCodigo.DataService'.'

Segui todos os passos, alguém pode me ajudar a entender o problema?

5 respostas

Vi que talvez seja porque não coloquei construtor padrão em Poduto. Mas por que precisa de um construtor padrão em Produto?

solução!

Olá Roberta, tudo bem?

Me parece que é alguma exigência do framework em ter um construtor vazio, para criar o objeto com os valores padrão e apenas havendo a necessidade de incluir os dados que esses valores serão alterados.

Já tive muito problema ao criar meu contexto sem definir construtores vazios. Depois disso, sempre costumo criar um construtor padrão para os objetos, a menos que haja uma regra de negócio que exija que não pode criar um objeto sem dados. Mas normalmente não são objetos relacionados ao banco de dados.

Bons estudos!

Mas por que criar um construtor vazio? apenas por exigência do framework?

Isso mesmo Roberta. O framework pede esse construtor vazio.

Pelo que entendi, o framework precisa de um objeto para criar as tabelas e fazer as chamadas, mas nem sempre vai precisar que esse objeto tenha dados. Só nos casos que fará as operações CRUD.

Entendi. Muito obrigada

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software