Hola Gustavo.

si, probe eso y tambien encerrar entre _session.Transaction.Begin() y 
_session.Transaction.Commit() y hace lo mismo.
Hay un tema de concepto, pero no me doy cuenta.
Este code es un prototipo de lo que me esta pasando en un programa real, y el 
problema es que me estan apretando con los tiempos, si se te ocurre otra forma 
de sustituir (o actualizar) la coleccion hija, por favor tirame una linea.

gracias,
Raul

Gustavo Ringel escribió:
> el _session.BeginTransaction().Commit suena muy mal.
> 
> probaste haciendo lo razonable:
> 
> using (ITransaction tx = _session.BeginTransaction())
> {
> ...
> 
>   tx.Commit();
> }
> 
> Asumiendo que tenes el flushMode en Commit tiene que andar.
> El get hacelo tambien en la misma transaccion...tenes que fijarte con el 
> nivel de isolation porque si estas usando readcommited y te agregan 
> parents en el medio podes tener problemas...no se cuan dinamico es.
> 
> Gustavo.
> 
> On Mon, Jan 12, 2009 at 12:15 PM, Raul Lopez <[email protected] 
> <mailto:[email protected]>> wrote:
> 
> 
>     Hola, por favor si me pueden dar una mano con esto.
>     La idea es borrar la coleccion en el child y sustituirla con una
>     nueva pero hay algo mal y no me doy cuenta.
>     Lo que esta haciendo es generar un solo registro colgado del ultimo
>     parent.
> 
>     _parents =  _session.CreateCriteria(typeof(Parent)).List<Parent>();
> 
>     foreach(Parent p in _parents) {
> 
>            p.Children.Clear();
> 
>     }
> 
> 
> 
>     Child c = new Child();
> 
>     c.Valor = 500;
> 
>     // agrega un child valor 500 a cada parent
> 
>     foreach(Parent p in _parents) {
> 
>            p.AddChild(c);
> 
>            _session.Update(p);
> 
>     }
> 
>     _session.BeginTransaction().Commit();
> 
> 
> 
> 
> 
> 
> 
>     del mapeo del parent
>     ...
> 
>     <bag name="Children" inverse="true" cascade="all-delete-orphan">
> 
>                            <key column="parent_id"/>
> 
>                            <one-to-many class="Child"/>
> 
>     </bag>
>     ...
> 
> 
> 
>     del mapeo del child
> 
> 
>     ...
>     <many-to-one name="Parent" column="parent_id" />
>     ...
> 
>     Desde ya muchas gracias.
> 
>     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