Usando Keyed Services no .Net 8
O .NET 8 introduziu a possibilidade de “dar nomes” aos serviços e assim podermos obter através de injeção de dependência através de uma referência que pode ser um nome, número, enum, objeto.
Exemplo 1: utilizando strings para definir os nomes
Um ponto fraco é a possibilidade de haver divergência, além do que ficar criando strings pelo código não é nada bonito e gera redundância desnecessária !
Melhorando
Exemplo 2: aqui ao invés de um literal, colocamos um Enum para que o nome seja identificado de forma única evitando assim um erro ao digitar a palavra chave para obtenção.
Neste caso criamos um Enum com propriedades que identificam o serviço
Utilidade
Tá ok, mas qual a utilidade prática em utilizar isso?
Digamos que em alguns casos tenhamos uma interface sendo utilizada para gerar inúmeros serviços que possuem métodos com o mesmo nome mas que tem internamente resultados diferentes, neste caso fica melhor instanciá-los desta forma, pois através do nome podemos diferenciá-los:
Exemplo 3
Nomes em constantes literais
Com uso de Controller
Gostou do artigo? clique no ícone👏e me siga para ver as próximas publicações !! Quer ver mais conteúdos, acesse minhas redes através do Linktree: https://linktree.com/nizzola