Kas yra "KeyedServices"?
Priklausomybės injekcija (DI) yra visur ASP.NET Core. Galite jį naudoti pasirinktinėms paslaugoms, bet dar svarbiau, kad pati sistema visada naudoja DI. Didžioji dalis to, ką galite sukonfigūruoti ASP.NET Core, yra sukonfigūruota naudojant DI.
Raktinių paslaugų atveju kita informacija saugoma ServiceDescriptor, kuris yra ServiceKey, naudojamas tarnybai identifikuoti. Raktas gali būti bet koks objektas, bet dažniausiai eilutė arba išvardijimas (gali būti konstantos, todėl jį galima naudoti ypatybėse). Neraktinių paslaugų atveju – tapatybės registracija; Raktavimo paslaugoms užregistruojama kombinuota tapatybės registracija su ServiceType. ServiceTypeServiceKey。
Raktų paslauga reiškia mechanizmą, kuris naudoja raktus priklausomybės injekcijos (DI) paslaugoms registruoti ir gauti. Užregistruokite paslaugą iškviesdami AddKeyedSingleton (arba AddKeyedScoped arba AddKeyedTransient), susietą su raktu. Naudokite ypatybę [FromKeyedServices], kad nurodytumėte prieigos prie registruotos tarnybos raktą.
- AddKeyedScoped
- AddKeyedSingleton
- AddKeyedTransient
"KeyedServices" testavimas
Sukurkite naują sąsają pranešimams siųsti, įdiegti el. pašto, SMS ir pranešimų siuntimo metodus, užsiregistruoti per pagrindinę paslaugą ir iškviesti konkretų jos įgyvendinimą nurodydami paslaugos ID, kodas yra toks:
Vykdykite, kaip parodyta toliau:
Kodo įvedimas per konstruktorių yra toks:
Nuoroda:
Hipersaito prisijungimas matomas.
Hipersaito prisijungimas matomas. |