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

Melihat: 413|Jawab: 0

[Kiat] Alat pendaftaran layanan injeksi dependensi .NET/C# Alat Scrutor

[Salin tautan]
Dipaparkan pada 2025-9-4 09:37:00 | | |
Persyaratan: Ketika proyek relatif besar dan sintaks penulisan sangat standar, ketika kita menambahkan antarmuka, kita perlu menambahkannya secara manual di wadah IServiceCollection, sehingga antarmuka dapat disuntikkan ke dalam konstruktor. Alat Scrutor sangat nyaman bagi kami untuk menambahkan secara otomatis sesuai dengan konfigurasi aturan kami.

Scrutor

Microsoft.Extensions.DependencyInjection untuk ekstensi pemindaian dan dekorasi rakitan.

Alamat kode sumber:Login hyperlink terlihat.

resensi

Melihat kembali pendaftaran layanan, ketiga cara injeksi singleton adalah sebagai berikut:

Pendaftaran layanan

Katakanlah Anda memiliki struktur kode seperti ini:

Definisi antarmuka
antarmuka publik IUserService { }
antarmuka publik IOrderService { }

Kelas implementasi
kelas publik UserService : IUserService { }
kelas publik OrderService : IOrderService { }

sebelum

Pendaftaran diperlukan satu per satu, dan kodenya adalah sebagai berikut:

Atau tulis metode Anda sendiri dan daftarkan melalui refleksi (Faktanya, Scrutor juga melalui refleksi), sebagai berikut:

kemudian

Scrutor membuatnya sangat nyaman untuk mendaftarkan pemindaian rakitan, terutama untuk mendaftarkan beberapa kelas layanan secara otomatis (misalnya, UserService terdaftar sebagai IUserService). Dependensi paket adalah sebagai berikut:

Kodenya adalah sebagai berikut:

Interpretasi:
  • . FromAssemblyOf<UserService>(): Menentukan rakitan yang akan dipindai.
  • . AddClasses(): Memindai semua kelas dalam kumpulan rakitan.
  • . AsImplemented Interfaces(): Secara otomatis mendaftarkan antarmuka untuk kelas-kelas ini saat diimplementasikan.
  • . WithScopedLifetime(): Atur masa pakai ke Scoped, yang juga dapat berupa WithTransientLifetime() atau WithSingletonLifetime().

(Akhir)




Mantan:.NET/C# mengonversi PDF menjadi gambar berdasarkan ImageMagick, GhostScript
Depan:Alibaba Cloud memasang OSS ke direktori sistem Linux
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