Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 253|Odpowiedź: 0

[ASP.NET] ASP.NET Core (32) zależy od wstrzykiwania usług klucza KeyedServices

[Skopiuj link]
Opublikowano 2025-10-11 11:15:07 | | | |
Czym jest KeyedServices?

Wstrzykiwanie zależności (DI) jest powszechne w ASP.NET Core. Możesz go używać do niestandardowych usług, ale co ważniejsze, sam framework zawsze korzysta z DI. Większość tego, co możesz skonfigurować w ASP.NET Core, jest konfigurowana przez DI.

Dla usług z kluczami inna informacja jest przechowywana w ServiceDescriptorze, czyli ServiceKey używanym do identyfikacji usługi. Kluczem może być dowolny obiekt, ale zazwyczaj jest to string lub enum (może być stałe, więc można go używać w właściwościach). Dla usług niekluczy, rejestracja tożsamości; Dla usług kluczyków zarejestrowana jest łączna rejestracja tożsamości z Typem Usługi. ServiceTypeServiceKey。

Usługa kluczowania odnosi się do mechanizmu, który wykorzystuje klucze do rejestrowania i pobierania usług zastrzykowania zależności (DI). Zarejestruj usługę, wywołując AddKeyedSingleton (lub AddKeyedScoped lub AddKeyedTransient), powiązaną z kluczem. Użyj właściwości [FromKeyedServices], aby określić klucz do dostępu do zarejestrowanej usługi.

  • AddKeyedScoped
  • AddKeyedSingleton
  • AddKeyedTransient

Testowanie KeyedServices

Stwórz nowy interfejs do wysyłania powiadomień, implementuj metody e-mail, SMS i wiadomości push, rejestruj się przez usługę klucza i wywołuj jej konkretną implementację, podając identyfikator usługi, a kod wygląda następująco:
Wykonaj tak, jak pokazano poniżej:



Wstrzykiwanie kodu przez konstruktor wygląda następująco:

Odniesienie:
Logowanie do linku jest widoczne.
Logowanie do linku jest widoczne.




Poprzedni:Poradnik zakupu sprzętowego portfela kryptowalutowego OneKey Pro
Następny:Serwery Linuksa przecinają logi nginx na podstawie logrotacji
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com