問題タブ [perwebrequest]

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 に答える
610 参照

model-view-controller - ウィンザー城: コントローラーの PerWebRequest

MVC アプリケーションでキャッスル ウィンザーを使用していますが、次の問題が発生しました。

私にはIUnitOfWorkProvider依存症がありPerWebRequestます。

コントローラーには、次の 2 つの依存関係があります。

AuthenticationProvider同じ依存関係があります ( IUnitOfWorkProvider)

問題は、「2つの」UnitOfWorkProvider(コントローラーと in 内AuthenticationProvider)が、私が期待するものと同じではないことです。

IAuthenticationProviderAuthenticationProviderおよびその登録は別のプロジェクト (Windows ライブラリ) にあります。

LifestylePerThread同じエラーで動作しません。

設定したらLifestyleSignletonうまくいきました。

誰でも助けることができますか?ありがとう。

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

dependency-injection - ServiceStack API アプリケーションで使用する正しい「リクエストごと」の Simple Injector ライフスタイルは何ですか?

Simple Injector を IoC コンテナーとして使用する ServiceStack API アプリケーションがあります。「Web リクエストごと」のライフスタイルを実現するには、特定のコンポーネントが必要です。

ここでSimple Injector のドキュメントを調べたところ、「Web リクエストごと」に対応するライフスタイルが 1 つではなく 2 つあることがわかりました。

  1. Web リクエストごと
  2. Web API リクエストごと

すべての ASP.NET アプリケーションが同じ基本的なパイプラインを使用し、HTTP モジュールをプラグインすることによって Web 要求ごとに IoC コンテナーが実装されていると常に思っていたので、これは私を混乱させました。Web API アプリケーションでこれが異なるのはなぜですか?

どれが ServiceStack API アプリケーションに最も適しているかについて、誰かが光を当てることができますか?

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

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

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

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

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

ありがとう、

サイド・デンマーク。

0 投票する
3 に答える
5482 参照

c# - Castle Windsor の PerWebRequest ライフスタイルを OWIN で使用する方法

OWIN を使用するように、既存の ASP .Net Web API 2 プロジェクトを変換しています。このプロジェクトでは、Castle Windsor を依存性注入フレームワークとして使用し、依存性の 1 つを PerWebRequest ライフスタイルを使用するように設定します。

サーバーにリクエストを送信すると、Castle.MicroKernel.ComponentResolutionException例外が発生します。例外では、構成ファイルのセクションsystem.web/httpModulesとセクションに次を追加することをお勧めします。system.WebServer/modules

これはエラーを解決しません。

SimpleInjector の OWIN 統合によって提供される例からインスピレーションを得て、以下を使用して OWIN スタートアップ クラスにスコープを設定しようとしました (依存関係のライフスタイルを更新するだけでなく)。

残念ながら、これもうまくいきませんでした。

Castle Windsor の PerWebRequest ライフスタイルを使用したり、OWIN でシミュレートするにはどうすればよいですか?

0 投票する
0 に答える
68 参照

dependency-injection - IC ライブラリでの Web リクエストごとのライフ サイクルのしくみ

任意の言語で DI を実装したいので、制御の反転でライフサイクルがどのように機能するかを知る必要があります。

たとえば、シングルトンを実装するために、同じインスタンスを提供する静的コレクションを持つことができます

IoC ライブラリで Web リクエストごとに使用する場合、リクエストが新しいかどうかをどのように区別できるかを知りたいです。または、リクエストには認識できる一意の ID がありますか?