2011-05-11 2 views
3

덜 오버 헤드로 해결할 수 있는지 궁금합니다. Product -> Size (Product가 한 크기를 가짐)와 간단한 일대 다 관계를 가정합니다. 얼마나 많은 제품이 하나의 크기에 할당되는지를 알기 위해 Size와 Product의 매핑을 업데이트 할 것입니다. Bag. 하지만 카운트에만 관심이 있다면 (제품 세부 정보가 필요 없음) 모든 제품 객체를로드하는 오버 헤드없이이 작업을 수행 할 수 있습니까? 어떤 계약 및 프로모션 추천 자료 비즈니스 디렉토리 리뷰 sl3dg3일대일 수

답변

7

사용 HBM의 속성 lazy="extra" 또는 ExtraLazyLoad()을 제품 수집 유창 매핑에.

corresponding question

를 참조 추가 게으른 로딩 Products.Count와 는 SQL 'SELECT COUNT'로 변환
-1

왜 조회를 작성하기위한

들으? Linq에 대한 이런 식으로 뭔가 (물론 HQL, 기준 또는 QueryOver의도 작동합니다) :

int count = session.Query<Product>() 
    .Where(x => x.Size != null) 
    .Count();