2011-08-27 6 views
0

내 응용 프로그램 (MVC3, WebForms)에서 Repository design pattern "Martin 's Fowler"를 사용하고 있습니다. 또한 모든 응용 프로그램에서 "ONLY ONE"DbContext ("Singletone")를 사용합니다.성능 질문 : EF4.1

세부 사항 : 저장소가이

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; 
    } 
} 

이 경우에 가장 좋은 방법은 무엇입니까?

나는 올바른 수행 방법을 배우기 위해 성능을 향상시켜야합니다.

답변 해 주셔서 감사합니다.

답변

2

전체 애플리케이션 = 하나의 컨텍스트를 사용하고 있습니다. 귀하의 신청서는 will not work입니다. 각 요청에 대해 새 컨텍스트 인스턴스를 사용하려면이를 변경해야합니다.

또한 귀하의 질문은 성능과 관련이 있으며 귀하의 코드 스 니펫은 어떻게 표현해야합니까?

+0

둘 이상의 dbcontext가 나에게 하나 이상의 dbcontext ....를 사용하는 것과 같은 오류를 던졌습니다. singletone을 사용하도록 변경 한 후 멋지게 작동하고 한 번 실패하지 않았습니다. 성능에 관한 질문 : 두 개 이상의 컨텍스트를 만들면 성능이 향상됩니다. 그리고 나는 그것을 올바른 방법으로 할 필요가 있다고 말했습니다. – IamStalker

+0

나는 올바른 방법으로 당신이해야 할 일을 이미 설명했다. 단순히 현재 솔루션이 잘못되었습니다. –

+0

알았어, 정말 고마워하지 않아서 고마워. 도움을 주셔서 감사합니다. – IamStalker