Я относительно новичок в NHibernate, и я пытаюсь сделать что-то, что кажется довольно сложным ...
У меня есть следующие отношения:
Пользователь <* ---- 1> Компания <1 ---- *> Магазин
То, что я хочу получить, это постраничный список магазинов для данного пользователя.
Мой метод выглядит так:
public PagedCollection<Shop> GetForUser(int userId, int page, int pageSize, string sortColumn, Enums.SortDirection sortDirection)
{
using (var session = NHibernateHelper.OpenSession())
{
//.. Todo!
}
}
Для полноты результирующий объект выгружаемой коллекции имеет следующие свойства:
public ICollection<T> Items { get; private set; }
public int PageNumber { get; private set; }
public int ItemsPerPage { get; private set; }
public int TotalItems { get; private set; }
Я думаю, здесь есть два вопроса:
1) Как я могу получить общее количество элементов и список элементов, используя ограничения page / pagesize / sort?
2) Как я могу сделать необходимое внутреннее соединение, чтобы перейти от пользователя к столу магазина?
Мне действительно нужен полностью напечатанный ответ, в отличие от строк sql, если это вообще возможно!