manda el mapping de detalle de factura.. especialmente la parte del
many-to-one.
Me huele a que le falta un inverse=true en el many to one.


El 17 de febrero de 2010 22:53, Roberto Ramírez
<[email protected]>escribió:

> Buenas tardes, otra vez aqui dando lata:
>
> Hace unos días, en este thread
> http://groups.google.com/group/nhibernate-hispano/browse_thread/thread/187664b60db361a5
>  había hablado
> sobre un modelo Factura ==> Detalle y ahora tengo otro problemita por
> resolver, agradecería mucho la opinión de todos ustedes.
>
> Cuando guardo la factura con su detalle, requiero que mi lista de detalles
> este ordenada usando list ya que según el post de ayende (
> http://ayende.com/Blog/archive/2009/06/02/nhibernate-mapping-ltlistgt.aspx),
> mapear mi lista como list, me permite ordenar de manera automática
>
> Pero también puedo eliminar mi factura borrando en cascada todo su detalle,
> solo que al final del request cuando ejecuto el commit, nhibernate me lanza
> la siguiente excepción:
>
> session.Delete(Factura);
>
> "could not delete collection: [Core.Factura.Detalle#72][SQL: UPDATE
> tblDetalles SET idFactura = null, orden = null WHERE idFactura = @p0]"
>
> Mi mapping:
>
> <?xml version="1.0" encoding="utf-8" ?>
> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Core"
> namespace="Core">
>   <class name="Factura" table="tblFacturas" lazy="false">
>     <id name="Id" column="id" type="System.Int64" unsaved-value="0">
>       <generator class="identity" />
>     </id>
>     <many-to-one name="Cliente" class="Cliente" column="idCliente"
> not-null="true" cascade="none"></many-to-one>
>     <list name="Detalle" table="tblDetalles" cascade="all-delete-orphan"
> lazy="false">
>       <key column="idFactura"/>
>       <index column="orden"/>
>       <one-to-many class="DetalleFactura"></one-to-many>
>     </list>
>   </class>
> </hibernate-mapping>
>
> Yo entiendo que al final nh lo que pretende realizar es un update sobre mi
> tblDetalles para ordenar, pero al ya no existir el detalle pues lanza la
> excepción.
>
> Agradezco la ayuda que me puedan brindar.
>
> Uso la versión 2.1.0.400 de la librería.
> --
> Roberto Ramírez
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

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