Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 253|Risposta: 0

[ASP.NET] ASP.NET Core (32) dipende dall'iniezione dei servizi chiave KeyedServices

[Copiato link]
Pubblicato il 11-10-2025 11:15:07 | | | |
Cos'è KeyedServices?

L'iniezione di dipendenza (DI) è ubiqua in ASP.NET Core. Puoi usarlo per servizi personalizzati, ma cosa più importante, il framework stesso usa sempre anche il DI. La maggior parte di ciò che puoi configurare in ASP.NET Core è configurato tramite DI.

Per i servizi con chiavi, un'altra informazione viene memorizzata nel ServiceDescriptor, che è la ServiceKey utilizzata per identificare il servizio. La chiave può essere qualsiasi oggetto, ma di solito stringa o enum (può essere costante, quindi può essere usata nelle proprietà). Per i servizi senza chiave, registrazione dell'identità; Per i servizi di keying, la registrazione combinata dell'identità con ServiceType viene registrata. ServiceTypeServiceKey。

Un servizio di keying si riferisce a un meccanismo che utilizza le chiavi per registrare e recuperare servizi di iniezione di dipendenza (DI). Registra un servizio chiamando AddKeyedSingleton (o AddKeyedScoped o AddKeyedTransient), associato a una chiave. Usa la proprietà [FromKeyedServices] per specificare la chiave per accedere al servizio registrato.

  • AddKeyedScoped
  • AddKeyedSingleton
  • AddKeyedTransient

Test KeyedServices

Crea una nuova interfaccia per inviare notifiche, implementa metodi email push, SMS e messaggi, registra tramite il key service e chiama la sua implementazione specifica specificando l'ID del servizio; il codice è il seguente:
Esegui come mostrato di seguito:



L'iniezione di codice tramite un costruttore è la seguente:

Riferimento:
Il login del link ipertestuale è visibile.
Il login del link ipertestuale è visibile.




Precedente:Tutorial per l'acquisto del wallet hardware di criptovalute OneKey Pro
Prossimo:I server Linux tagliano i log nginx basandosi su logrotate
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com