NHibernate: количество дочерних коллекций и активный выбор свойств дочерних коллекций - PullRequest
2 голосов
/ 22 ноября 2010

Я только начал использовать NHibernate, и у меня есть 2 проблемы, с которыми я столкнулся.Мне нужно получить число строк дочерней коллекции в моем совокупном корне, и я хотел знать, как лучше всего это сделать.На данный момент у меня есть следующее для моего запроса:

 var query = QueryOver.Of<Idea>()
             .Where(i => i.Status != IdeaStatus.Completed)
             .Fetch(x => x.Category).Eager
             .Fetch(x => x.Comments).Eager
             .Fetch(x => x.Votes).Eager
             .Fetch(x => x.CreatedBy).Eager
             .OrderBy(i => i.Created).Desc.Cacheable();

        if (Category != 0)
            query = query.Where(i => i.Category.Id == Category);

Мне нужен счетчик из коллекции комментариев, а не с нетерпением возвращать все элементы обратно.У меня есть свойство в моей сущности Idea под названием CommentCount, которое я хотел бы заполнить из этого.Вторая проблема заключается в том, что я с нетерпением извлекаю все голоса за идею, однако, когда я перебираю голоса по каждой идее, мне кажется, что я снова запрашиваю БД.Сущность - поэтому мне было интересно, как я могу указать, что я хочу, чтобы свойство CreatedBy в дочерней коллекции также охотно выбиралось.

Большое спасибо заранее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...