Это умеренно расточительный процесс, если все, что вам нужно, это счетчик, так как он полностью заполнит всю коллекцию подчиненных, чтобы просто получить счет. Я думаю, вам лучше создать метод, который принимает Person и возвращает вам счет их подчиненных, а вы используете HQL для выполнения функции действительного счета. Если вы не можете сделать функцию прямого подсчета, вы можете заставить ее возвращать только одно значение для каждого подчиненного, которое соответствует Person FK, а затем вызывать .Length или .Count в коллекции, которую она возвращает. Однако я предполагаю, что HQL должен быть в состоянии рассчитать это непосредственно для вас, хотя.

я есть следующие настройки класса для персистентности с помощью NHibernate

public class Person
{
    public string Name { get; set; }
    public IList<Person> Subordinates { get; set; }
}

Теперь скажите, что у меня есть сетка с двумя столбцами «Имя» и «Число подчиненных», что является лучшим способом сделать это в NHibernate при сохранении использования доменных объектов, где это возможно.

Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос