Получение количества дочерних элементов с ограничениями с помощью QueryOver в NHibernate

Как я могу сделать следующее, используя QueryOver и без полей формул.

У меня есть следующие отношения родитель / потомок

public class Club {

public string Name {get; set;}
public IList<Membership> Memberships {get; set;}
}

public class Membership {

public boolean Cancelled {get; set;}
public Club Club {get; set;}
}

У меня есть следующий запрос, который возвращает 15 клубов и преобразует результаты в DTO. Мне нужно добавить в этот запрос RowCount членств, принадлежащих каждому клубу и не отменено.

IEnumerable<ClubIndexViewModelLineSummary> results = _querySession.QueryOver<Club>()
                    .OrderBy(c => c.IsActive).Desc
                    .OrderBy(c => c.Name).Asc
                    .SelectList(list => list
                                            .Select(c => c.Id).WithAlias(() => sum.Id)
                                            .Select(c => c.Name).WithAlias(() => sum.Name)
                                            .Select(c => c.IsActive).WithAlias(() => sum.IsActive)
                                            .Select(c => c.NumberOfWeeks).WithAlias(() => sum.NumberOfWeeks))
                    .TransformUsing(Transformers.AliasToBean<ClubIndexViewModelLineSummary>())
                    .Skip(start)
                    .Take(15)
                    .Future<ClubIndexViewModelLineSummary>();
6
задан aattia 13 June 2011 в 16:21
поделиться