Kas ir KeyedServices?
Atkarības injekcija (DI) ir visuresoša ASP.NET kodolā. Jūs varat to izmantot pielāgotiem pakalpojumiem, bet vēl svarīgāk ir tas, ka pati sistēma vienmēr izmanto arī DI. Lielākā daļa no tā, ko varat konfigurēt ASP.NET Core, tiek konfigurēta, izmantojot DI.
Atslēgas pakalpojumiem ServiceDescriptor tiek glabāta cita informācija, kas ir ServiceKey, kas tiek izmantota pakalpojuma identificēšanai. Atslēga var būt jebkurš objekts, bet parasti virkne vai uzskaitījums (var būt konstantes, tāpēc to var izmantot rekvizītos). Pakalpojumiem bez atslēgas – identitātes reģistrācija; Atslēgas pakalpojumiem tiek reģistrēta kombinētā identitātes reģistrācija ar ServiceType. ServiceTypeServiceKey。
Atslēgas pakalpojums attiecas uz mehānismu, kas izmanto atslēgas, lai reģistrētu un izgūtu atkarības injekcijas (DI) pakalpojumus. Reģistrējiet pakalpojumu, izsaucot AddKeyedSingleton (vai AddKeyedScoped vai AddKeyedTransient), kas saistīts ar atslēgu. Izmantojiet rekvizītu [FromKeyedServices], lai norādītu atslēgu, lai piekļūtu reģistrētajam pakalpojumam.
- AddKeyedScoped
- AddKeyedSingleton
- AddKeyedTransient
KeyedServices testēšana
Izveidojiet jaunu saskarni, lai nosūtītu paziņojumus, ieviestu e-pastu, SMS un ziņojumu piegādes metodes, reģistrējieties, izmantojot galveno pakalpojumu, un izsauciet tā konkrēto ieviešanu, norādot pakalpojuma ID, kods ir šāds:
Izpildiet, kā parādīts zemāk:
Koda ievadīšana, izmantojot konstruktoru, ir šāda:
Atsauce:
Hipersaites pieteikšanās ir redzama.
Hipersaites pieteikšanās ir redzama. |