Como funciona a injeção de dependência no ASP.NET Core

 

 

 

 

Victor Cavalcante

@vcavalcante

vcavalcante@lambda3.com.br

VICTOR CAVALCANTE

 
  • Desenvolvedor Web
  • Microsoft MVP de ASP.NET
  • vcavalcante@lambda3.com.br
  • @vcavalcante 

Vamos entender o problema

Qual o problema?

Estamos violando o SRP

Single Responsability Principle

“Uma classe deve ter um, e apenas um, motivo para ser modificada”

Como resolvemos?

Temos que tirar responsabilidade dela

Vamos inverter o controle e deixar a responsabilidade de criar fora dela

Inversão de controle

Como ele vai "Injetar a dependência"?

Injeção de dependência :)

Configurando a Injeção de Dependência

Ainda temos um problema

É Difícil testar

Como Injetar?

Construtor

Na Action

Na view

Ciclo de vida dos objetos

Scoped

1 por request

Transient

1 novo a cada pedido

Singleton

1 é instanciado no primeiro pedido e vive até o fim da aplicação

Demo

Dúvidas, Críticas ou Sugestões?

 

 

 

 

@vcavalcante

 vcavalcante@lambda3.com.br

https://github.com/vcavalcante/injecaodependenciaaspnetcore

Made with Slides.com