You may need a fully-filled graph of objects before passing it to another level, that is, when working with the fact that NHibernate is referenced as separate instances.
Lazy loading only works in the context of ISession. With aggregates, any child objects are usually loaded by the parent, but you may have some scenarios in which it would be impractical to load the child objects, especially when they are not required to perform any processing that you are going to do.
David source
share