コンストラクターパラメーターとインターフェースを解決するようにUnityを構成する

ジョン・ライバーモア

2つのコンストラクターパラメーターを受け取るFaxServiceクラスがあります。

public FaxService(string phone, IFaxProvider faxProvider)

Unityは、最初のパラメーターに文字列を送信し、2番目のパラメーターにIFaxProviderインスタンスを送信するようにどのように構成されていますか?文字列を提供する別のサービスを挿入できることに気付きましたが、FaxServiceコンストラクターパラメーターを変更する必要がないソリューションを探しています。

これは私がこれまでに持っているものです...

class Program
{
    static void Main(string[] args)
    {
        var container = new UnityContainer();

        var phone = "214-123-4567";
        container.RegisterType<IFaxProvider, EFaxProvider>();
        container.RegisterType<IFaxService, FaxService>(phone);

        var fax = container.Resolve<IFaxService>();
    }
}

public interface IFaxService { }

public interface IFaxProvider { }

public class FaxService : IFaxService
{
    public FaxService(string phone, IFaxProvider faxProvider) { }
}

public class EFaxProvider : IFaxProvider { }

しかし、それは投げます...

Unity.Exceptions.ResolutionFailedException HResult = 0x80131500
メッセージ=依存関係の解決に失敗しました、タイプ= 'ConsoleApp3.IFaxService'、名前= '(なし)'。解決中に例外が発生しました。

ここに画像の説明を入力してください

いつも学ぶ
var container = new UnityContainer();
var phone = "214-123-4567";
container.RegisterType<IFaxProvider, EFaxProvider>();
container.RegisterType<IFaxService, FaxService>(new InjectionConstructor(phone, typeof(IFaxProvider)));

var fax = container.Resolve<IFaxService>();

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

コンストラクターパラメーターとインターフェースを解決するようにUnityを構成する

分類Dev

Unity コンテナー - 常に同じコンストラクターパラメーターを持つオブジェクトを解決します

分類Dev

groovyとjavaの両方のパラメーターコンパイラーフラグを含めるようにmavenとintellijを構成する方法

分類Dev

コンストラクターWPFへのパラメーターとしてインターフェイスを含むフォームを表示する

分類Dev

List<T> パラメータを持つコンストラクタでクラスを解決する方法は?

分類Dev

インターフェイスを解決するときNinjectを構成シングルトンに解決しません

分類Dev

インターフェイスに複数のジェネリックパラメータがある場合、「[type]を[interface]に暗黙的に変換できません」エラーを解決するにはどうすればよいですか?

分類Dev

インターフェイスメソッドのパラメータをクラス実装ごとに具象型にするように強制します

分類Dev

コンシューマーが1つのネットワークインターフェイスを使用し、クラスターレプリケーションが別のネットワークインターフェイスを使用するようにkafkaを構成できますか?

分類Dev

インターフェースをパラメーターとしてクラスコンストラクターに渡す

分類Dev

改造リクエストでインターフェースにパラメーターを設定する方法

分類Dev

junit4でパラメーターを使用しようとすると、コンストラクターでnullパラメーターを取得します

分類Dev

コンストラクターパラメーターとしてインターフェイスを適切に追加するにはどうすればよいですか?

分類Dev

コンストラクターパラメーターが多すぎるUnityインジェクション

分類Dev

コンストラクタのパラメータを決定する方法

分類Dev

コンストラクターに異なるパラメーターを渡すことにより、異なるシングルトンクラスをインスタンス化できるようにする方法

分類Dev

sipトランクのネットワークインターフェースを構成する

分類Dev

クラスのフィールドをコンストラクターのパラメーターと同じタイプにする方法

分類Dev

単一引数コンストラクターを使用するようにjacksonを構成する

分類Dev

パラメータをインターフェイスを実装するクラスにするためにどのように要求しますか?

分類Dev

コンストラクターがパラメーターを必要とするジェネリック型のインスタンスを作成しますか?

分類Dev

const T&をパラメーターとして使用するコピーコンストラクターをコンパイラーに選択させる

分類Dev

1つのジェネリックコンストラクターパラメーターで型を登録/解決する方法

分類Dev

コンストラクターを通常のパラメーターとジェネリックパラメーターでオーバーロードする

分類Dev

インターフェイスの実装クラスのタイプパラメータを設定するにはどうすればよいですか?

分類Dev

コンストラクターインジェクションに構成時と実行時に既知のパラメーターがある場合に、AutoFacからクラスのインスタンスを取得するための最良の方法は何ですか

分類Dev

ビルド構成を渡すことができるように、デフォルト値を使用したInnoSetupのカスタムコマンドラインパラメーター

分類Dev

PHPメーラーの構成とスパムフィルターを回避するためのヒント

分類Dev

AutofacでITypeConverter <、>コンストラクターの依存関係を満たすようにAutoMapperを構成する

Related 関連記事

  1. 1

    コンストラクターパラメーターとインターフェースを解決するようにUnityを構成する

  2. 2

    Unity コンテナー - 常に同じコンストラクターパラメーターを持つオブジェクトを解決します

  3. 3

    groovyとjavaの両方のパラメーターコンパイラーフラグを含めるようにmavenとintellijを構成する方法

  4. 4

    コンストラクターWPFへのパラメーターとしてインターフェイスを含むフォームを表示する

  5. 5

    List<T> パラメータを持つコンストラクタでクラスを解決する方法は?

  6. 6

    インターフェイスを解決するときNinjectを構成シングルトンに解決しません

  7. 7

    インターフェイスに複数のジェネリックパラメータがある場合、「[type]を[interface]に暗黙的に変換できません」エラーを解決するにはどうすればよいですか?

  8. 8

    インターフェイスメソッドのパラメータをクラス実装ごとに具象型にするように強制します

  9. 9

    コンシューマーが1つのネットワークインターフェイスを使用し、クラスターレプリケーションが別のネットワークインターフェイスを使用するようにkafkaを構成できますか?

  10. 10

    インターフェースをパラメーターとしてクラスコンストラクターに渡す

  11. 11

    改造リクエストでインターフェースにパラメーターを設定する方法

  12. 12

    junit4でパラメーターを使用しようとすると、コンストラクターでnullパラメーターを取得します

  13. 13

    コンストラクターパラメーターとしてインターフェイスを適切に追加するにはどうすればよいですか?

  14. 14

    コンストラクターパラメーターが多すぎるUnityインジェクション

  15. 15

    コンストラクタのパラメータを決定する方法

  16. 16

    コンストラクターに異なるパラメーターを渡すことにより、異なるシングルトンクラスをインスタンス化できるようにする方法

  17. 17

    sipトランクのネットワークインターフェースを構成する

  18. 18

    クラスのフィールドをコンストラクターのパラメーターと同じタイプにする方法

  19. 19

    単一引数コンストラクターを使用するようにjacksonを構成する

  20. 20

    パラメータをインターフェイスを実装するクラスにするためにどのように要求しますか?

  21. 21

    コンストラクターがパラメーターを必要とするジェネリック型のインスタンスを作成しますか?

  22. 22

    const T&をパラメーターとして使用するコピーコンストラクターをコンパイラーに選択させる

  23. 23

    1つのジェネリックコンストラクターパラメーターで型を登録/解決する方法

  24. 24

    コンストラクターを通常のパラメーターとジェネリックパラメーターでオーバーロードする

  25. 25

    インターフェイスの実装クラスのタイプパラメータを設定するにはどうすればよいですか?

  26. 26

    コンストラクターインジェクションに構成時と実行時に既知のパラメーターがある場合に、AutoFacからクラスのインスタンスを取得するための最良の方法は何ですか

  27. 27

    ビルド構成を渡すことができるように、デフォルト値を使用したInnoSetupのカスタムコマンドラインパラメーター

  28. 28

    PHPメーラーの構成とスパムフィルターを回避するためのヒント

  29. 29

    AutofacでITypeConverter <、>コンストラクターの依存関係を満たすようにAutoMapperを構成する

ホットタグ

アーカイブ