Persyaratan: Di ASP.NET Core, kami biasanya menggunakan AddTransient, AddScoped, dan AddSingleton untuk mendaftarkan layanan dengan siklus hidup yang berbeda sesuai dengan bisnis kami sendiri, jika proyek perlu mendaftarkan 100 layanan (lapisan akses database, aturan penamaan objek biasa), kami perlu menulis 100 baris kode untuk mendaftar, bagaimana cara mendaftarkan layanan ini secara dinamis atau menggunakan refleksi?
Melalui refleksi dinamis, kita hanya perlu beberapa baris kode untuk menyelesaikannya, dan ketika kita membuat layanan baru (karena akan dipindai untuk layanan baru saat terdaftar secara dinamis), kita tidak perlu mendaftarkannya.
Prinsip layanan pendaftaran dinamis adalah memanggil pembuat. Layanan.TambahkanDeskriptor Layananjalan.
Lapisan akses database kami, nama antarmuka: IClassificationService, nama objek antarmuka implementasi: ClassificationService, nama lapisan akses database diikuti oleh "Service", Anda dapat mendaftarkan semua layanan lapisan akses database melalui aturan ini, kodenya adalah sebagai berikut:
Kode antarmuka IClassificationService:
Kode ClassificationService:
(Akhir)
|