以下にリンクされている例に従って、サービスレイヤーで動作するようにユニティをセットアップしています。私のプロジェクトは、この記事のプロジェクトと非常によく似たセットアップでありPerThreadLifetimeManager
、サービスの依存関係を登録するときに が正確に使用される理由を除いて、すべてを理解しています。サービスレイヤーでも使用されている汎用リポジトリと作業単位も使用していることに注意してください。Unity のほとんどの例では、既定の (一時的な) ライフタイム マネージャーを使用していPerThreadLifeimeManager
ます。何か変更があれば、現在のプレゼンテーション層に ASP.NET Web フォーム プロジェクトを使用しています。
container.RegisterType<ICatalogService, CatalogService>(
new PerThreadLifetimeManager())
[asp.net MVC 3 での EF コードの最初の依存性注入によるリポジトリ パターン][1] [1]: http://www.dotnetage.com/publishing/home/2011/07/05/6883/the-repository- pattern-with-ef-code-first-dependeny-injection-in-asp-net-mvc3.html