Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để thực hiện tiêm phụ thuộc bằng cách sử dụng tiêm dựa trên giao diện trong C #?

Quá trình đưa (chuyển đổi) các đối tượng được ghép nối (phụ thuộc) vào các đối tượng được tách rời (độc lập) được gọi là Dependency Injection.

Các loại tiêm phụ thuộc

Có bốn loại DI -

  • Chèn cấu tạo

  • Tiêm định vị

  • Chèn dựa trên giao diện

  • Chèn định vị dịch vụ

Chèn giao diện

Interface Injection tương tự như Getter và Setter DI, Getter và Setter DI sử dụng getter và setter mặc định nhưng Interface Injection sử dụng giao diện hỗ trợ một loại getter và setter rõ ràng để đặt thuộc tính giao diện.

Ví dụ

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());
   }
}

Tiêu thụ

BusinessLogicImplementationInterfaceDI objInterfaceDI =
new BusinessLogicImplementationInterfaceDI();
objInterfaceDI= new ClaimService();
objInterfaceDI.setServiceRunService(serviceObj);