問題タブ [autofac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
autofac - autofac コンテナーを解決する前に、すべてのクラスを登録する必要がありますか?
このシナリオを考えてみましょう:
C を Autofac コンテナーから解決するには、B と C の両方をコンテナーに登録する必要があります。しかし、今日はUnityを使用しました。B をコンテナーに登録するだけでよいようで、C は解決できます。
Autofac は Unity のようにできないのでしょうか?
asp.net-mvc-2 - Autofac 2.2 および ASP.NET MVC 2.0 領域のサポート
Nicholas はブログで、ASP.NET MVC 2.0 Areas のサポートを発表しました。しかし、私はそれを機能させることができませんでした.Autofacソースコードで見たものから、領域のサポートはどこにも見当たりません. すなわち、RegisterControllers
はどこにもエリアについて言及していませんAutofacControllerFactory
。
ここで明らかな何かが欠けていますか?
c# - TypedParameterに基づくAutofacの異なるサービス解像度
とにかく、特定のパラメーターに最も具体的に一致するコンストラクターを使用して具体的な実装を持つサービスを解決するためにautofacを取得する方法はありますか。
これは、基本型のコンストラクターを照合するのではなく、子型のコンストラクターを照合することを意味します。
たとえば、次のテストに合格したい
私の目標は、IService、IEditorを作成し、autofacに渡すことでタイプのIEditorを解決できるようにすることです。これを実行して、IEditorを継承し、IEditorの対象となる適切なコンストラクター型を使用するだけで、型のエディターを「オーバーライド」できるようにします。
ありがとうございました。
autofac - メソッドの動作を設定すると、メソッドが呼び出されているように見える
これを TypeMock フォーラムに投稿しましたが、応答を待つのが待ちきれません。これは非常に不自然な質問です。
偽の IContainer を設定しようとしています。ここに私が持っているものがあります:
(IProgram
私のコードのインターフェースです)。
このコードを実行しようとすると、「要求されたサービス MyApp.IProgram が登録されていません」という Autofac 例外が発生します。
しかし、この例外はどのようにスローされるのでしょうか? 私は実際に container.Resolve() を呼び出しているわけではありませんよね? 偽の IProgram を返すように設定しているだけです。
無関係な背景情報: Autofac は拡張メソッドを広範囲に使用し、Moq はそれらをモックしないため、TypeMock を試しています。
asp.net-mvc - ASP.Net MVC の Autofac
Autofac の初心者として、リポジトリをコントローラに登録する方法を見つけようとしています。リポジトリは、そのコンストラクターで Web サービスを受け取り、サーバーと通信します。このアプリケーションはマルチテナントであり、テナント名は MVC ルート データでアクセスされます。ほとんどの例のように global.asax 内のルート データにアクセスできないため、この依存関係をどこに挿入すればよいでしょうか。コードはどのようになりますか?
c# - Windows開発のためにAutofacを速く学ぶ方法は?
新しい会社で、使用されているIoCがAutoFacであるプロジェクトを開始しようとしています。私はDI/IoCの経験がなく、これについて理解を深めたいので、あまりにも賢くないようには見えません。これは、WPFアプリケーション用です(これもあまりわかりませんが、問題ありません)
AutofacとIoC全般を学ぶために使用できる優れたリソースは何ですか?私は来週の月曜日に最初のフェーズから始めます:(私は勉強するために今週末すべてを延期しました!
IoCのアイデアは素晴らしいものですが、他の領域で使用するときに「コンテナ」をどのように持ち歩くかはわかりません。シングルトン(悪さを表す継ぎ目)を作成しますか、それともGetServiceへのアクセサーを使用して静的クラスを作成しますか?
編集:私はAutofacに関するcodeprojectの記事を読んでいて、IoCがNInjectチュートリアルを介して何を解決しようとしているのかについてもある程度理解していますが、確かなことは何もありません。
model-view-controller - nunitを含むコンテナーでMVCWebアプリをテストするにはどうすればよいですか?
Autofacで実行されているMVCWebがあります。すべての設定はweb.configのautofacconfigセクションに保存され、実行するとグローバルasaxがコンテナを設定し、設定設定を提供することですべてのモジュールを分類します-現時点で私が興味を持っているのはNHibernateモジュール-これにより、接続文字列がコンストラクターに設定されます。
NHibernateを使用してデータアクセスをテストするためのテストをいくつか構築したいと思います。リポジトリとサービスレイヤーがありますが、これは必ずしも適切ではありません。
すべてのテストを含むソリューションにプロジェクトを追加する必要があります。これを行う場合は、このテストプロジェクトのautofac構成でデータベース接続文字列を複製し、このプロジェクトでデータをテストするテストコンテナを構築する必要があります。アクセス?または、テストを行うためにWebアプリのコンテナーを取得しようとしている必要があります。これは、Global.asaxのApplication_startがhttpGETにヒットしない限り実行されないためではないと思います。Webアプリの構成とコンテナーの作成をすべて複製したくはありませんが、現時点では、複製する必要があると考えています...?
c# - Autofac での汎用サービス ファクトリまたはプロバイダーの実装
たとえば、インターフェイスがありますISomeService
。ISomeService
共通のサービスを提供しますが、実装は異なる場合があります。そのため、それらには異なる依存関係があります。
検討:
さて、現実には、 ISomeService への依存関係をコントローラーに追加するだけでは完了できません。ユーザーからの指示に基づいて IService の実装を選択する必要があり、ユーザーが選択したサービスの複数のコピーを作成する必要がある場合があります。
おそらく、必要な ISomeService のインスタンスをタイプ別に解決できるクラスがあると思います。
だから私はできた
Autofac のデリゲート ファクトリはここでは適切ではないようです。それ以外の場合はどうすればよいかわかりません (サービス ロケータを使用する場合を除く)。推奨事項はありますか?
autofac - Autofac の名前付きメソッド
サービス名を使用していくつかのタイプを識別したいと思います。
この例に示されているものが正確に必要です
ただし、メソッドnamed
には、文字列型の引数を 1 つ取るオーバーロードはありません (ジェネリックのみが行います)。このメソッドは、型 type の 2 番目の引数を取ります。
.net - 一般的なサービスを解決する
私は次のサービスを受けました:
..次のように定義された実装を作成しました。
次のように解決できるように、autofacに登録するにはどうすればよいですか。