Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 253|Resposta: 0

[ASP.NET] ASP.NET Core (32) depende da injeção de serviços de chave KeyedServices

[Copiar link]
Publicado em 2025-10-11 11:15:07 | | | |
O que é o KeyedServices?

A injeção de dependência (DI) é onipresente em ASP.NET Core. Você pode usá-lo para serviços personalizados, mas, mais importante, o próprio framework sempre usa DI. A maior parte do que você pode configurar no ASP.NET Core é feita via DI.

Para serviços com chave, outra informação é armazenada no ServiceDescriptor, que é a Chave de Serviço usada para identificar o serviço. A chave pode ser qualquer objeto, mas geralmente string ou enum (podem ser constantes, então podem ser usadas em propriedades). Para serviços sem chave, registro de identidade; Para serviços de chaveamento, o registro combinado de identidade com ServiceType é registrado. ServiceTypeServiceKey。

Um serviço de chaveamento refere-se a um mecanismo que utiliza chaves para registrar e recuperar serviços de injeção de dependência (DI). Registre um serviço chamando AddKeyedSingleton (ou AddKeyedScoped ou AddKeyedTransient), associado a uma chave. Use a propriedade [FromKeyedServices] para especificar a chave para acessar o serviço registrado.

  • AddKeyedScoped
  • AddKeyedSingleton
  • AddKeyedTransient

Testes KeyedServices

Crie uma nova interface para enviar notificações, implemente métodos de e-mail, SMS e push de mensagens, registre pelo serviço de chave e chame sua implementação específica especificando o ID do serviço, o código é o seguinte:
Execute conforme mostrado abaixo:



Injetar código via um construtor é o seguinte:

Referência:
O login do hiperlink está visível.
O login do hiperlink está visível.




Anterior:Tutorial de compra de carteira de hardware de criptomoeda OneKey Pro
Próximo:Servidores Linux cortam logs nginx com base no logrotate
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com