Bagaimana untuk melaksanakan suntikan pergantungan menggunakan suntikan berasaskan antara muka dalam C#?

王林
Lepaskan: 2023-09-07 20:09:07
ke hadapan
1186 orang telah melayarinya

Bagaimana untuk melaksanakan suntikan pergantungan menggunakan suntikan berasaskan antara muka dalam C#?

Proses menyuntik (menukar) objek berganding (bergantung) kepada objek yang dipisahkan (bebas) dipanggil suntikan kebergantungan.

Jenis suntikan kebergantungan

DI mempunyai empat jenis −

  • Suntikan Konstruktor##Suntikan Konstruktor# #

  • Suntikan penetap
  • Suntikan berasaskan antara muka
  • ###
  • Suntikan Antaramuka
Suntikan Antaramuka adalah serupa dengan Getter dan Setter DI, Getter dan Setter DI menggunakan getter dan setter lalai, tetapi suntikan Antaramuka menggunakan antara muka sandaran (pengambil dan penetap eksplisit yang menetapkan sifat antara muka).

Contoh

public interface IService{ string ServiceMethod(); } public class ClaimService:IService{ public string ServiceMethod(){ return "ClaimService is running"; } } public class AdjudicationService:IService{ public string ServiceMethod(){ return "AdjudicationService is running"; } } interface ISetService{ void setServiceRunService(IService client); } public class BusinessLogicImplementationInterfaceDI : ISetService{ IService _client1; public void setServiceRunService(IService client){ _client1 = client; Console.WriteLine("Interface Injection ==> Current Service : {0}", _client1.ServiceMethod()); } }
Salin selepas log masuk

memakan

BusinessLogicImplementationInterfaceDI objInterfaceDI = new BusinessLogicImplementationInterfaceDI(); objInterfaceDI= new ClaimService(); objInterfaceDI.setServiceRunService(serviceObj);
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan suntikan pergantungan menggunakan suntikan berasaskan antara muka dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!