私はHomedataAccess
クラスをインスタンス化しようとしていますが、それはコンストラクタ引数として文字列とインターフェイスIQueryManager
をとります。どのように登録すればいいですか?コンストラクタが別のインタフェースを取る場合、Simple Injectorでコンストラクタインジェクションを行う方法?
今まで、私は次のように行われていると、それは動作しますが、私はこの方法が好きではない:
Kernel.Register(() => new HomeDataAccess("anandv4",
new SqlServerQueryManager(new SqlServerConnectionManager())));
は、これを行う別の方法はありますか?
感謝を:
これは次のようにあなたが登録を行うことができます。私は、単純なユーザー名プロパティを個別のIUserインターフェイスに抽象化できることを発見しました。これにより、以下を実行するのに役立ちます。 Kernel.Register(); Kernel.Register (); Kernel.Register (); –
このユーザー名は、実行中のアプリケーションの存続期間中一定であるか、または要求ごとに変更されますか?(現在の要求をトリガーしたユーザーの名前です) – Steven