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

如何在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()); } }登录后复制