C# でインターフェイスベースの注入を使用して依存関係の注入を実装するにはどうすればよいですか?

王林
リリース: 2023-09-07 20:09:07
転載
1139 人が閲覧しました

C# でインターフェイスベースの注入を使用して依存関係の注入を実装するにはどうすればよいですか?

結合された (依存) オブジェクトを分離された (独立した) オブジェクトに挿入 (変換) するプロセスは、依存関係の挿入と呼ばれます。

依存関係インジェクションの種類

DI には 4 つのタイプがあります -

  • コンストラクター インジェクション

  • セッター インジェクション

  • インターフェイスベースのインジェクション

  • サービス ロケーター インジェクション

インターフェイス インジェクション

インターフェイス インジェクションは、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());
   }
}
ログイン後にコピー

消費

BusinessLogicImplementationInterfaceDI objInterfaceDI =
new BusinessLogicImplementationInterfaceDI();
objInterfaceDI= new ClaimService();
objInterfaceDI.setServiceRunService(serviceObj);
ログイン後にコピー

以上がC# でインターフェイスベースの注入を使用して依存関係の注入を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!