我在我的应用程序(MVC3, WebForms)中使用存储库设计模式"Martin's Fowler",我还在我的所有应用程序中使用"ONLY ONE" DbContext ("Singletone")。
细节:存储库是这样的,
class Repository<T> : IRepository<T>, IUnitOfWork
只有一个存储库,我可以创建更多的存储库,像这样:
class UserRepository {
private IRepository<User> _repository;
//dependency injection via constructor using Ninject
public UserRepository(IRepository<User> repository) {
_repository = repository;
}
}
等等…
在这种情况下,什么是最好的做法,你有什么建议可以做得更好?我必须提高我的表现,当然还要学习正确的方法。
谢谢大家的回答。
您正在为整个应用程序使用一个上下文=您完成了。您的应用程序将无法工作。您必须更改它,以便为每个请求使用新的上下文实例。
我也想知道你的问题是如何与性能相关的,你的代码片段应该代表什么?