如何在C#中使用基于接口的注入来实现依赖注入?

王林
Lepaskan: 2023-09-07 20:09:07
ke hadapan
1139 人浏览过

如何在C#中使用基于接口的注入来实现依赖注入?

将耦合(依赖)对象注入(转换)为解耦(独立)对象的过程称为依赖注入。

依赖注入的类型

DI 有四种类型−

  • 构造函数注入

  • Setter注入

  • 基于接口的注入

  • 服务定位器注入

接口注入

接口注入类似对于 Getter 和 Setter DI,Getter 和 Setter DI 使用默认的 getter 和 setter,但接口注入使用支持接口(一种设置接口属性的显式 getter 和 setter)。

示例

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

消费

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

以上是如何在C#中使用基于接口的注入来实现依赖注入?的详细内容。更多信息请关注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
Tutorial Popular
Lagi>
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!