2011-07-28 7 views
0

여러분,리포지토리 패턴의 이점

나는 저장소 패턴의 이점을 어떻게 상사에게 납득시킬 수 있는지 숙고하고 있습니다. 특히 다음 문제를 겪은 후에 여기

딜레마 데이터베이스에서 모든 아이스크림 (들) 전에 메모리에로드되어 상기 저장소 기능

Icecream ce = qRepository.FindWhere(
        (q) => 
        { 
         return q.Id == 10; 
        } 
       ).FirstOrDefault<Icecream>(); 

에 호출 아이스크림 저장소 여기

public IEnumerable<Icecream> FindWhere(Func<Icecream, bool> predicate) 
     { 
      return (from item in nhibernateSession.Linq<Icecream>() select item).AsQueryable<Icecream>()    
       .Where(predicate)         
       .OrderByDescending(c => c.Id).ToList(); 
     } 

에서 메소드의 야 '술어'가 적용됩니다. 적어도 그것은 생성 된 SQL에서 추론 한 것입니다. 그리고 그것은 큰 'NO, NO'입니다.

위의 성격을 나타내는 저장소 패턴을 추구 할 가치가있는 방법을 누군가에게 설득 할 수 있습니까? 위의 문제를 피할 수있는 해결 방법이 있습니까?

감사 저장소 패턴은 IOC 컨테이너의 모든 유형을지지 않습니다

답변

0

도먼. 플랫 파일에서 메모리리스트, 저장된 procs에 이르기까지 모든 지속성 메커니즘을 사용하여 패턴을 얻을 수 있습니다. 문제는 IOC 컨테이너 또는 LINQ에 있습니다.