Buenos días José, Fabio, gracias por atender.
La parte del mapping del detalle lo tengo escrito de la siguiente manera:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Core"
namespace="Core">
<class name="DetalleFactura" table="tblDetalles" lazy="false">
<id name="Id" column="id" type="System.Int64" unsaved-value="0">
<generator class="identity" />
</id>
<property name="Orden" column="orden" type="System.Int32"
not-null="false"></property>
<many-to-one name="Articulo" class="Articulo" column="idArticulo"
not-null="true" cascade="none"></many-to-one>
<many-to-one name="Factura" class="Factura" column="idFactura"
not-null="false" cascade="none"></many-to-one>
</class>
</hibernate-mapping>
Aprecio la ayuda...
=)
--
Roberto Ramírez
2010/2/18 José F. Romaniello <[email protected]>
> 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
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano