問題タブ [ioc-container]
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.
asp.net - spring.netはサブディレクトリを再帰しますか?
spring.netフレームワークがasp.netアプリケーション用に起動すると、IoCコンテナー内のすべてのオブジェクトを登録するコンポーネントは、web.configで参照されるすべてのサブディレクトリを再帰しますか?
例えば。
デバッグ情報(トレースリスナー)の出力を見ると、答えはイエスだと思います。
私が見ている問題は、'\ bin \ clientservice'ディレクトリにインスタンスを作成しようとすると、dllがサブディレクトリに存在していても、エラーメッセージが表示されて失敗することです。
'ファイルまたはアセンブリを読み込めませんでした'log4net、Version = 1.2.10.0、Culture = neutral、PublicKeyToken=1b44e1d426115821'またはその依存関係の1つ。システムは、指定されたファイルを見つけることができません。'
誰かアイデアがありますか?
乾杯
Ollie
inversion-of-control - コンポーネント駆動型開発とは何ですか?
コンポーネント駆動型開発の用語は、特に広く使用され始めています。制御の反転に関連して。
- それは何ですか?
- それはどのような問題を解決しますか?
- それが適切なのはいつですか、そうでないのはいつですか?
java-me - J2ME に適した IoC コンテナーの探索が始まっています。
私は Blackberry/J2ME プロジェクトの初期段階にいます。この素晴らしいプラットフォームに付随するその他の制限に加えて、リフレクションと 1.3 言語レベルがサポートされていないため、既存の IoC コンテナーの大部分は使用できません。(Google には AOP のない Android 用の Guice がありますが、それでもアノテーションのサポートが必要です)。
そのため、J2ME 上の IoC コンテナーのスペースはかなり限られています。私の注意を引いた 1 つのフレームワークはSignal Frameworkと呼ばれ、かなり有望に見えます。Spring Framework の IoC に概念的に近いままで、その機能の小さなサブセットを実装しようとします。これは、バイトコードの変更に依存したり、実行時の xml 解析を引き起こしたりすることなく行われます。代わりに、ビルド時に構成 XML を処理して、この IoC 機能を実装する Java コードを生成します。
一般的に言えば、ビルド時のコード生成は、モバイル アプリケーションにとって非常に賢明なアプローチのように思えます。また、アプリがユーザーのデバイスで XML 解析を行う必要が少ないのであれば、それも素晴らしいことです。
では、J2ME/CLDC に IoC を実装した経験はどのようなものでしたか?また、どのようにして口の中の苦味を消すことができたのでしょうか?
asp.net-mvc - IoCコンテナなしでコントローラーをユニットテストするにはどうすればよいですか?
最新のASP.NETMVCプロジェクトを構築しながら、単体テスト、依存関係の注入、およびそのすべてのジャズに取り組み始めています。
私は今、コントローラーの単体テストを行いたいと思っていますが、IoCコンテナーなしでこれを適切に行う方法を理解するのに苦労しています。
単純なコントローラーを例にとってみましょう。
このクラスは、SqlQuestionsRepositoryを直接インスタンス化するため、ユニットテストはあまりできません。それでは、ディペンデンシーインジェクションルートをたどって実行しましょう。
これは良いようです。これで、モックIQuestionsRepositoryを使用して単体テストを簡単に作成できます。しかし、コントローラーをインスタンス化するにはどうすればよいでしょうか。コールチェーンのさらに上のどこかで、SqlQuestionRepositoryをインスタンス化する必要があります。問題を解決するのではなく、単に問題を別の場所に移したようです。
さて、これはIoCコンテナーがコントローラーの依存関係を配線することで役立つと同時に、コントローラーを簡単にユニットテスト可能に保つ良い例であることを私は知っています。
私の質問は、 IoCコンテナを使用せずに、この種のものの単体テストをどのように行うと想定するかということです。
注:私はIoCコンテナーに反対しているわけではなく、まもなくその道を進むでしょう。しかし、私はそれらを使用しない人々のための代替手段が何であるか興味があります。
c# - タイプがFuncであるかどうかを検出する方法Tのタイプを取得します
遅延読み込みをサポートするために使用している基本的なIoCコンテナーをアップグレードできるかどうか疑問に思っています。したがって、IFooを登録した場合は、IoCコンテナーに、次の両方の依存関係を満たす方法を知ってもらいたいと思います(1つ目はIoCコンテナーの標準的な動作方法であり、2つ目はIFooのコンテナーを呼び出す単純なデリゲートを返します。呼び出されます)。
問題は、実際にこれを行うコードを書き込もうとしたときに発生します。次の擬似コードをコンパイルする構文はありますか?
または、別の言い方をすれば、タイプT
がある場合、それがのインスタンスであるかどうかをどのように検出できますか?Func<X>
もしそうなら、タイプはX
何ですか?
unity-container - 実際の IoC コンテナ ライブラリを非表示にするには?
選択した IoC コンテナー ライブラリ (Unity) からすべてのコードを分離したいと考えています。そのために、Register() と Resolve() を公開する IContainer インターフェイスを作成しました。IContainer を実装し、実際のコンテナーをラップする UnityContainerAdapter というクラスを作成しました。したがって、UnityContainerAdapter が定義されているアセンブリのみが Unity ライブラリについて認識します。
私の孤立思考に漏れがあります。Unity は、依存関係を注入する場所を知るために、型のメンバーの属性を検索します。私が見たほとんどの IC ライブラリもそれをサポートしています。私が抱えている問題は、その機能を使用したいのですが、クラスが Unity 固有の属性に依存することを望まないことです。
この問題を解決する方法について何か提案はありますか?
理想的には、独自の [Dependency] 属性を作成し、それをコードで使用します。しかし、実際のコンテナに、自分の属性ではなく自分の属性を検索するように指示する必要があります。
c# - daoFactoryをNHibernateEventListenerに注入する方法
PostUpdateイベントでサブスクライブされたEventListenetにグローバルサービス(daoFactory)を注入する必要があります。私はこのようにすることが可能であることを読みました:
ただし、このコードは例外をスローするだけです。EventListenerにパラメーターなしのコンストラクターが指定されていません。そして、これは理解できる動作です。これは、サービスをどのコンテナーにも追加していないためです。では、NHibernateでIoCコントローラーを指定するにはどうすればよいですか?
inversion-of-control - Spring.Net IoC とマジック ストリング
私は IApplicationContext.GetObject(string name) メソッドについて考えてきましたが、アプリケーション コンテキストからオブジェクトを取得するためにマジック ストリングにかなり大きく依存しているようです。StructureMapのような他のコンテナーでは、ジェネリックを使用して構成を指定し、オブジェクトを要求できますが、Spring.Net IoC コンテナーで文字列を使用して ApplicationContext からオブジェクトを要求するよりも良い方法はありますか?
c# - UnityContainer-Tを動的にResolveメソッドに渡す
結果のIEnumerableofTを取得できるように、入力したISearchableインターフェイスを作成しました。
さまざまなドメインオブジェクトに対してISearchableを実装するサービスがいくつかあります...
タイプに基づいてISearchableを(Unityを介して)解決したいのですが、それを機能させるのに苦労しています...
以下はコンパイルされませんが、うまくいけば、私が達成しようとしていることのアイデアを与えるでしょう。
ありがたいことに助けてくれました!
ありがとう、
アンディ