Ahora bien te voy a contestar a tu pregunta,....

   1. Abrir transacción dentro de un bucle es mala idea, ya que hacer
   cualquier cosa con la base de datos dentro de un bucle es mala idea. Para
   esto NHibernate justamente provee batch
   http://nhforge.org/doc/nh/en/index.html#batch . De paso, antes que ver
   cualquier otra cosa en internet... en ese link que te pasé esta la
   documentación oficial.
   2. En lugar de ejecutar consultas dentro del for, yo vería la forma de
   consultar por algo más grande al principio. Claro que si eso es muy grande,
   esta estrategia es mala también.


En definitiva, en pseudocódigo sería algo así:

using transaction
  var condiciones = session.Query....
  foreach(Solicitud sol in SolicitudesAActualizar)
    Si dada las condiciones debo insertar esta solicitud, save


asegurate de tener un batch_size razonable

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a