¿Cuál es la mejor manera de actualizar entidades en nhibernate

Me gustaría actualizar una entidad y todas sus colecciones secundarias. ¿Cuál es la mejor manera de hacer esto? Estoy hablando de nhibernate :)

He leído sobre session.Evict, session.Refresh ...

Pero todavía no estoy seguro si hacer como:

RefreshEntity<T>(T entity)
{
 session.Evict(entity);
 session.Refresh(entity);
}

funcionaría exactamente como quiero que funcione

¿Va a funcionar? Si no, ¿qué más puedo hacer?

Respuestas a la pregunta(2)

Su respuesta a la pregunta