12

私は以下のコードを持っています。1つはユーザーリポジトリにバインド可能で、もう1つはキャッシュ用です。UserRepository と Cache にはどのスコープを使用する必要がありますか。UserRepository のスコープはシングルトンにする必要がありますか?

    this.Bind<IUserRepository>().To<UserRepositary>().InRequestScope();

    this.Bind<IDistributedCacheService>().To<DistributedCacheService>().InSingletonScope();
4

1 に答える 1

14

通常、リポジトリはリクエストスコープにバインドされます。これは、通常、作業単位またはデータベーストランザクションサイズを定義するためです。

更新: ninject を使用して重要なリソースを管理する方法について、もう少し詳しく説明します。リクエストスコープでリポジトリをバインドしているときに、これに遭遇しました。

http://bobcravens.com/2010/11/using-ninject-to-manage-critical-resources/ [アーカイブ]

ボブ

于 2010-12-06T04:38:24.780 に答える