問題タブ [light-inject]

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.

0 投票する
1 に答える
638 参照

dependency-injection - LightInject PerWebRequest インターセプト

これは、LightInject の傍受に固有のものです。ユーザー入力に基づいて傍受ロジックを条件付きでオン/オフできるように、PerWebRequest の有効期間に基づいて傍受ロジックを適用することは可能ですか? たとえば、このようなもの。

IMyService の有効期間は PerWebRequest として定義されているため、すべての Web 要求に対して作成され、MyService インスタンスを作成するたびに Intercept メソッドを呼び出して、トレースが有効かどうかに応じてインターセプト ロジックを適用することを動的に決定できるという印象を受けました。ユーザーによって無効にされました。ただし、IMyService インスタンスが要求されたときに初めて Intercept メソッドを呼び出し、その後のすべての要求で同じ Interception メカニズムを再利用するようです。

また、MyServiceInterceptor 内で ITraceSwitcher ロジックを使用して、そこで傍受ロジックを使用またはバイパスすることもできますが、リフレクションによるプロキシ呼び出しのオーバーヘッドを回避するためにトレースが無効になっている場合は、プロキシの作成を避けたいと考えていますが、これは Intercept の場合にのみ可能です。メソッドは、Web リクエストごとに呼び出されます。それが可能か、またはより良い方法があるかどうか教えてください。

ありがとう、

サイド・デンマーク。

0 投票する
2 に答える
3284 参照

c# - DryIoc、LightInject エクスペリエンス

良好なパフォーマンス結果が得られる .NET IoC コンテナーを使用したいと考えています。IoC コンテナーのパフォーマンスに関するこの記事を読みましたが、DryIoc と LightInject が最高のようです。しかし、私はそれらのいくつかのレビュー、特に実際の使用からのいくつかの経験を見つけられませんでした.

  • DryIoc と LightInject の使用経験はありますか?
  • パフォーマンス重視のプロジェクトに推奨する IoC コンテナーはどれですか?
0 投票する
2 に答える
4608 参照

asp.net-mvc-4 - ASP.NET MVC で LightInject を構成する方法

このコードで mvc で SimpleInjector を使用します

しかし今、mvc アプリケーションでLightInject Ioc をテストしたいのですが、どうすればよいでしょうか?

私はこのコードを書きました

ここに画像の説明を入力

しかし、このエラーを見せてください

MVC で動作する同等のコードを書くのを手伝ってくれる人はいますか?

サンプルコード: ダウンロード

0 投票する
2 に答える
410 参照

c# - 依存性注入 - 名前付き依存性

私は1つの問題に取り組んでいます。この例の状況を想像してみてください。IUserRepository が注入された UserModule などのモジュールが 1 つあります。IUserRepository は、IUserRepositorySql や IUserRepositoryDe​​fault など、より多くの実装を持つことができます。

UserModule で使用される IUserRepository の実装を定義したいと思います。Marc Seeman の本で IoC アンチパターンのように見なされる Factory パターンを避けたいのですが、これはコンテナー構成でのみ実現したいと考えています。

私は LightInject を使用しており、名前付きサービスのようなものがありますが、トップレベルでしか使用できません。私はこのようなものが必要です:

このコードは、注入された UserRepositorySql インスタンスを含む IUserModule のインスタンスを返す必要がありますが、もちろんそうではありません。

LightInjectでこれに対する解決策はありますか?

適切なタイプのいくつかのプロパティを挿入できるLightinjectの機能注釈を見つけましたが、このソリューションはあまり好きではありません。

他の IOC コンテナでの経験はありますか? この問題をどのように/どの機能で解決しますか?

0 投票する
1 に答える
1404 参照

c# - コンストラクターに渡された新しいインスタンスを使用して、LightInject に既に登録されている型をオーバーライドする方法は?

リポジトリでは、アプリケーションの存続期間を通じて存続するいくつかのインスタンスを保持していますが、新しいインスタンスを container.GetInstance コンストラクターのオーバーライドに渡したとしても、そのようなインスタンスを別のインスタンスと LightInject にすぐに置き換える必要がある場合があります。

問題を示すスニペットを次に示します。

GetInstance 呼び出しで明示的なインスタンスを指定すると、以前に登録された LightInject インスタンスが優先されるのはなぜですか? 問題を回避し、引数の 1 つの代替インスタンスを使用してオブジェクトを構築するにはどうすればよいですか?

0 投票する
1 に答える
729 参照

c# - LightInject を使用して静的関数のインスタンスを解決する

ASP MVC プロジェクトで LightInject を使用しています。初期化コードは、 http ://www.lightinject.net/#mvc とほぼ同じです。

私の質問は、HTML ヘルパーなどの静的関数のインスタンスを解決する方法です。

ServiceContainerクラス内を静的にすることはできますかMvcApplication、それとも悪い習慣ですか?

0 投票する
2 に答える
583 参照

light-inject - LightInject WCF を WCF Web サービスに実装する

LightInject を WCF サービスに実装しようとしています。

私は GitHub から LightInject.Wcf クラス ファイルを持っていますが、サービスでそれを使用する方法がわかりません。

助けてください

0 投票する
1 に答える
866 参照

c# - LightInject データベース コンテキストを MVC に挿入する

MVC アプリケーションで LightInject の使用を開始していますが、DB コンテキスト クラスのインスタンスを実装する方法について少し混乱しています。

コンストラクターを介して注入できることはわかっています...しかし、これを行う必要がある場合、LightInjectのポイントは何ですか。

また、アプリケーションの DB コンテキスト クラスは既にインターフェイス (IdentityDbContext) を実装しているため、リポジトリ用に別のインターフェイスを作成するのは適切ではないようです。

DB Context クラスには、コンストラクターにこれがあります。

だから私は非常に簡単に呼び出すことができます:

コンストラクターでは-しかし、私の理解では、これはSOLIDの原則に反します。

では、LightInject を使用してデータベース コンテキスト クラスのインスタンスを作成するにはどうすればよいでしょうか。