batch-size for efficient eager loading of collection object graph in nhibernate
===

I want to eager load a collection of objects efficiently.  The following code sample shows what I'm doing now.  But the c.CommunicationMethods & c.Roles objects are loaded 1 Sql statement at a time.  I saw references to the bag & batch-size... can someone provide sample mapping file references?  Is that my best option?  Can I keep my loop here & batch my sql statements?  

Both CommunicationMethods & Roles are defined as many-to-one in the Contacts mapping file.


    NHibernateUtil.Initialize(entity.Collection1);
    NHibernateUtil.Initialize(entity.Collection2);
    
    NHibernateUtil.Initialize(entity.Contacts);
    foreach (var c in entity.Contacts)
    {
    NHibernateUtil.Initialize(c.CommunicationMethods);
    NHibernateUtil.Initialize(c.Roles);
    }