Ninject, Bind должен быть .InRequestScope() ИЛИ .InSingletonScope()
У меня есть код ниже. Один привязан к моему репозиторию пользователей, а другой - к кэшу. Какую область действия я должен использовать для UserRepository и Cache. Должна ли область охвата UserRepository быть одиночной?
this.Bind<IUserRepository>().To<UserRepositary>().InRequestScope();
this.Bind<IDistributedCacheService>().To<DistributedCacheService>().InSingletonScope();
Ответы
Ответ 1
Обычно репозитории привязаны к inququestscope, потому что это обычно определяет размер транзакции или размер транзакции базы данных.
Обновление: вот немного больше информации об управлении критическими ресурсами с помощью ninject. Я столкнулся с этим, привязывая свой repos inrequestscope.
http://bobcravens.com/2010/11/using-ninject-to-manage-critical-resources/
Боб