Cuando ponés unsaved-value="0" nhibernate toma que el Id si es '0' es
un objeto nuevo.

On 1/31/07, Chili <[EMAIL PROTECTED]> wrote:
>
> He estado mirando tu código, y básicamente es a lo que yo me refería.
> Borras un elemento de tu colección, y a continuación salvas tu clase
> padre (la actualizas) y el nhibernate se ocupa de todo. He visto algo
> en un mapping que no sé para qué sirve, a ver si me lo podrías
> explicar: unsaved-value="0".
>
> Como no sé lo que estoy haciendo mal, ¿podrías pegar aquí tu método
> Guardar de ActividadPlanBL?
>
> Saludos!
>
> On 31 ene, 01:29, "Dario Quintana" <[EMAIL PROTECTED]>
> wrote:
> > Adjunto un pedazo de codigo, explico algo del codigo:
> >
> > Son 2 entidades:
> >
> > -ActividadPlan (padre)
> > -LaborActividadPlan (hija)
> >
> > tambien mando un ejemplo de form con la funcionalidad, para que vean
> > algo del código:
> >
> > - frmLaboresPorActividad.cs
> >
> > Bien lo que hago es asignar a "bsource" (que es un bindingsource) la
> > lista de las LaborActividadPlan. Cuando quiero eliminar un hijo, me
> > "paro" sobre el hijo y hago:
> > bsource.RemoveCurrent();
> >
> > y despues le doy Guardar:
> >
> > this.ActividadPlanBL.Guardar(this.ActividadPlan);
> >
> > Solamente guardo el padre, el hijo se borra solo, NHibernate se dá
> > cuenta solito y lo elimina.
> >
> > Tambien adjunto los mapping para que vean.
> >
> > Ahora despues la seguimos...ahora tengo que salir..nos vemos gente
> >
> > On 1/30/07, Ezequiel Jadib <[EMAIL PROTECTED]> wrote:
> >
> >
> >
> >
> >
> > > si al elemento que eliminas en la lista no le haces un delete no te va a
> > > funcionar
> > >  ________________________________
> >
> > > rdi2k | Ezequiel Jadib | MSN: [EMAIL PROTECTED] | Blogs:
> > >http://geeks.ms/blogs/ejadib/(ES) - ejadib.wordpress.com (EN)
> >
> > > ----- Original Message -----
> > > From: Chili
> > > To: NHibernate-Hispano
> > > Sent: Tuesday, January 30, 2007 7:42 PM
> > > Subject: [NHibernate-Hispano] Re: Problemas con un update
> >
> > > Lo que me dices es lo que intentaba hacer, es decir, elimino el
> > > elemento de la lista en memoria, luego hago el update de la persona, y
> > > ahí es donde me da error, por lo que ya no puedo seguir.
> >
> > > On 30 ene, 22:45, "Andrés G. Aragoneses [ knocte ]" <[EMAIL PROTECTED]>
> > > wrote:
> > > > Chili escribió:
> >
> > > > > Eso de hacer el delete de la propia entidad ya tiene más sentido :).
> > > > > No obstante, como yo también soy un principiante, me gustaría que
> > > > > alguien que estuviese más ducho me dijera si es necesario.
> >
> > > > > En cuanto a lo del inverse=true, es necesario? Lo digo porque yo no
> > > > > necesito tener ninguna referencia desde EmailDA a DatosPersonalesDA, y
> > > > > según tengo entendido, inverse=true, es que puedes dar la vuelta, es
> > > > > decir:
> >
> > > > >  Persona 1 - n Direcciones
> >
> > > > >  Persona.Direcciones[0].Persona
> >
> > > > Opino lo mismo que tú, que el inverse="true" sólo es necesario
> > > > especificarlo en los casos en los que tienes acceso desde los dos
> > > > sentidos de la colección, y sólo en uno de los extremos.
> >
> > > > Lo que yo haría es hacer dos cosas: eliminar el elemento de la lista,
> > > > hacer SaveOrUpdate en Persona, y luego eliminar con Delete la dirección
> > > > propiamente dicha, y luego Flush.
> >
> > > >         Andrés [ knocte ]
> >
> > > > --
> >
> > --
> > Dario Quintanahttp://blog.darioquintana.com.ar
> >
> >  codigo.zip
> > 8 KDescargar
>
>
> >
>


-- 
Dario Quintana
http://blog.darioquintana.com.ar

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

Responder a