Carlos, estoy usando algo asi donde _session es global y aplico 
NHibernateSessionFactory.OpenSession() en el constructor. 
En principio funciona, ahora voy a ver que pasa cuando traslade este tema de 
parent-child a la aplicacion real.
Si se me complica aviso :)

Saludos,
Raul.


Carlos Peix escribió:
> Hola Raul,
> 
> Normalmente no uso winforms pero por ahí este patron podria funcionarte:
> 
> using ( ITransaction tx = _session.BeginTransaction() )
> {
>       // Aquí haces todas tus actualizaciones
> 
>       tx.Commit();
> }
> 
> Donde _seesion es la variable de instancia del form, ahí tenes la sesion
> abierta y tenes un scope bien limitado para la transaccion.
> 
> En cuanto a esto:
>> - Estas agregando LA MISMA INSTANCIA de chuild a todos los parents, me 
>> parece que eso no es lo que queres hacer.
> a los efectos de la prueba me parecio que no era relevante, pero...
> 
> [Carlos] Creo que es muy relevante porque en el Child tenes una referencia
> al parent, lo cual invalida que un child pueda pertenecer a varios parents.
> Incluso diria que este es el motico por el cual te quedaba un child asociado
> a un solo parent (el ultimo), supondiendo que estuvieras haciendo la
> referencia al parent, cosa que no se ve en tu codigo.
> 
> 
> Suerte
> 
> Carlos Peix 
> 
> -----Mensaje original-----
> De: [email protected]
> [mailto:[email protected]] En nombre de Raul Lopez
> Enviado el: Lunes, 12 de Enero de 2009 11:44 a.m.
> Para: [email protected]
> Asunto: [NHibernate-Hispano] Re: ayuda con coleccion
> 
> 
> Hola Carlos, en efecto habia varias cosas mal (lo copie correctamente al
> mail). Probe con tu codigo y funciona.
> Te comento conclusiones entre lineas:
> 
> Carlos Peix escribió:
>> Hola Raul,
>>
>> Hay varias cosas en tu ejemplo que no estan bien, no se si porque lo 
>> copiaste incorrectamente al mail o porque estan definitivamente mal. 
>> Te pido que reescribas tu codigo de esta manera (y que cambies lo que 
>> corresponda siempre y cuando entiendas los motivos). Estos son los 
>> puntos que no me cierran
>>
>> - No queda claro el scope de la variable _session.
> es global para todo el form
> 
>> - Estas agregando LA MISMA INSTANCIA de chuild a todos los parents, me 
>> parece que eso no es lo que queres hacer.
> a los efectos de la prueba me parecio que no era relevante, pero...
> 
>> - Veo una propiedad Parent en el child que no estas seteando en el 
>> codigo que enviaste.
> fue omision, no lo vi
> 
>> - Estas haciendo un update con cada parent, esto no seria necesaro, 
>> incluso no es necesario hacer ninguno con la opcion de cascade que tenes.
> de acuerdo, esta de mas
> 
>> // Aca achicas mucho mas el scope de session, el metodo // 
>> CreateSession() depende de cómo manejes e sessionFactory // pero 
>> deberia ser una sesion nueva puesto que estas haciendo // el Dispose 
>> al salir del using(), esa sesion no servira para // nada mas.
> 
> aca no hay problema, pero en el programa real se me complica si no hago la
> sesion global (tengo lio con el lazy) Voy a estudiar mas sobre el tema del
> manejo de las sesiones.
> 
> Muchas gracias una vez mas.
> 
> Saludos,
> Raul.
> 
>  
> 
> 
> 
> > 
> 

--~--~---------~--~----~------------~-------~--~----~
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