Advanced NHibernate
Some less common features:
Filters
Alternative to using a session.CreateQuery or CreateCriteria for entity collections:
Specify the persistent collection (NOT an in-memory collection)
//hql "from" and "select" are implicit
var ordersByDate = session
.CreateFilter(cust.OrderCollection, "order by OrderDate")
.List<Order>();
//use no hql to just do paging
var orders = session
.CreateFilter(cust.OrderCollection, "") //empty hql
.SetMaxResults(5).SetFirstResult(5) //paging
.List<Order>();