0

Windows サービスでキャッスル ウィンザーを使用して、WCF サービスを自己ホストしています。この前は、IIS でそれらをホストしていて、PerWebRequest としてリポジトリ オブジェクトを登録していました (ORM として EF 5.0 のリポジトリ パターンに従っています)。Web.Configファイルに以下の行を追加できたので、IISでホストしている間は機能していました-

  <system.webServer>
  <modules>
     <add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Windsor" />
  </modules>

しかし、今ではセルフホスティングです。上記のモジュールを追加できません。WCF サービスのリポジトリに PerWebRequest を使用することをお勧めします。そうしないと、コンテキストとトランザクションで問題が発生する可能性があります。セルフホスティング中に使用できる PerWebRequest に似た他のライフスタイルはありますか? または、私の仮定が間違っているかどうか教えてください。

前もって感謝します

サイ

アップデート

Transient lifetstyle としてコンテナーに登録されているリポジトリーでテストしましたが、挿入または更新で失敗します。コンテナーからオブジェクトを要求するたびに新しいオブジェクトが返されるため、基本的に DbContext オブジェクトが失われます。誰かが私のような問題に直面しましたか?

4

1 に答える 1