Soy nuevo en NHibernate (mi primer gran proyecto con él).
He estado usando un método simple de acceso a datos creando el objeto ISession dentro de un bloque usando para agarrar mi Objeto o lista de Objetos, y de esa manera la sesión fue destruida después de salir del bloque de código.¿La mejor manera de administrar sesiones en NHibernate?
Esto no funciona en una situación en la que se requiere carga lenta.
Por ejemplo, si tengo un objeto de Cliente que tiene una propiedad que es una colección de Pedidos, cuando se intenta la carga lenta, recibo una excepción de Hibernación.
¿Alguien que usa un método diferente?
Solo una nota, algunos meses después. Si bien todavía estamos utilizando los enfoques anteriores, en su mayor parte, hay un trabajo más interesante realizado por las personas que trabajan en el uso de una herramienta IOC para administrar 'ISessions' y' ISessionFactory's; es posible que deseen consultar StructureMap y FubuMvc. proyectos para más información. –
@Matt: eche un vistazo a la instalación de Castle NHibernate, ha existido durante años: http://www.castleproject.org/container/facilities/trunk/nhibernate/index.html –
Los enlaces en la respuesta parecen estar desactualizados . –