Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 253|Jawab: 0

[ASP.NET] ASP.NET Core (32) bergantung pada injeksi layanan kunci KeyedServices

[Salin tautan]
Dipaparkan pada 2025-10-11 11:15:07 | | | |
Apa itu KeyedServices?

Injeksi dependensi (DI) ada di mana-mana di ASP.NET Core. Anda dapat menggunakannya untuk layanan khusus, tetapi yang lebih penting, kerangka kerja itu sendiri selalu menggunakan DI juga. Sebagian besar yang dapat Anda konfigurasikan di ASP.NET Core dikonfigurasi melalui DI.

Untuk layanan berkunci, informasi lain disimpan di ServiceDescriptor, yang merupakan ServiceKey yang digunakan untuk mengidentifikasi layanan. Kuncinya bisa berupa objek apa pun, tetapi biasanya string atau enum (bisa berupa konstanta, sehingga dapat digunakan dalam properti). Untuk layanan non-kunci, pendaftaran identitas; Untuk layanan penguncian, pendaftaran identitas gabungan dengan ServiceType didaftarkan. ServiceTypeServiceKey。

Layanan pengisian mengacu pada mekanisme yang menggunakan kunci untuk mendaftarkan dan mengambil layanan injeksi dependensi (DI). Daftarkan layanan dengan memanggil AddKeyedSingleton (atau AddKeyedScoped atau AddKeyedTransient), yang terkait dengan kunci. Gunakan properti [FromKeyedServices] untuk menentukan kunci untuk mengakses layanan terdaftar.

  • AddKeyedScoped
  • AddKeyedSingleton
  • AddKeyedTransient

Pengujian KeyedServices

Buat antarmuka baru untuk mengirim notifikasi, menerapkan metode push-email email, SMS, dan pesan, mendaftar melalui layanan kunci, dan memanggil implementasi spesifiknya dengan menentukan ID layanan, kodenya adalah sebagai berikut:
Jalankan seperti yang ditunjukkan di bawah ini:



Menyuntikkan kode melalui konstruktor adalah sebagai berikut:

Referensi:
Login hyperlink terlihat.
Login hyperlink terlihat.




Mantan:Tutorial pembelian dompet perangkat keras cryptocurrency OneKey Pro
Depan:Server Linux memotong log nginx berdasarkan logrotate
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com