<bag name="RemitosDeDistribucion" cascade="none" inverse="true">
        <key column="IdRemito"/>
        <one-to-many class="*IdRemitoDeCompra*"/>
      </bag>

Saludos,
Nestor Andres Rodriguez

2011/8/4 Nicolás Marzoni <[email protected]>

> Saludo a todos!
>
> Tengo un problema al cargar una relación one-to-many bidireccional.
> Adjunto el mapeo de las clases.
>
> <?xml version="1.0" encoding="utf-8" ?>
> <hibernate-mapping
>  xmlns="urn:nhibernate-mapping-2.2"
>  namespace="Celsius.Core.Dominio"
>  assembly="Celsius.Core">
>  <class name="Remito" table="Remitos" lazy="true" abstract="true">
>
>    <id name="IdRemito" type="guid">
>      <generator class="guid.comb" />
>    </id>
>
>    <version name="Version" type="Int32" unsaved-value="0"/>
>    <component name="Numero" class="NumeracionRemito">
>      <property name="Prefijo" column="Numero_Prefijo" type="Int32"
> not-null="true" />
>      <property name="Sufijo" column="Numero_Sufijo" type="Int32" not-
> null="true" />
>    </component>
>    <property name="Fecha" type="DateTime" not-null="true"/>
>    <property name="Descripcion" type="string(250)" />
>
>    <!--RemitoDeCompra-->
>    <joined-subclass name="RemitoDeCompra" table="RemitosDeCompra">
>      <key column="IdRemito"/>
>
>      <bag name="Detalle" cascade="all-delete-orphan" inverse="true">
>        <key column="IdRemito"/>
>        <one-to-many class="ItemRemitoDeCompra"/>
>      </bag>
>
>      <bag name="RemitosDeDistribucion" cascade="none" inverse="true">
>        <key column="IdRemito"/>
>        <one-to-many class="RemitoDeDistribucion"/>
>      </bag>
>
>    </joined-subclass>
>
>    <!--RemitoEnTransito-->
>    <joined-subclass name="RemitoEnTransito" table="RemitoEnTransito"
> abstract="true">
>      <key column="IdRemito"/>
>      <many-to-one name="Transportista" column="IdTransportista" not-
> null="true"/>
>
>      <!--RemitoDeDistribucion-->
>      <joined-subclass name="RemitoDeDistribucion"
> table="RemitosDeDistribucion">
>        <key column="IdRemito"/>
>        <many-to-one name="RemitoDeCompra" column="IdRemitoDeCompra"
> not-null="true"/>
>
>        <bag name="Detalle" cascade="all-delete-orphan"
> inverse="true">
>          <key column="IdRemito"/>
>          <one-to-many class="ItemRemitoDeDistribucion"/>
>        </bag>
>
>      </joined-subclass>
>
>      <!--RemitoDeRecoleccion-->
>      <joined-subclass name="RemitoDeRecoleccion"
> table="RemitosDeRecoleccion">
>        <key column="IdRemito"/>
>                        ...
>      </joined-subclass>
>
>      ...
>
>    </joined-subclass>
>
>  </class>
> </hibernate-mapping>
>
>
> El problema está en la relación de RemitoDeCompra con
> RemitoDeDistribución. Si hago RemitoDeDistribución.RemitoDeCompra
> funciona bien, pero al hacer RemitoDeCompra.RemitosDeDistribucion la
> colección siempre está vacia. Sin embargo si me trae la colección de
> items cuando hago RemitoDeCompra.Detalle. Probé cambiar el cascade y
> el inverse pero no dio resultado. Será algun problema por la herencia?
>
> Borré todas las tablas y las volvi a generar, aparentemente todas las
> relaciones están bien.
>
> Estoy usando la versión 3.0.0.2001 de NHibernate
>
> Saludos!
>
> --
> 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