Sip.. gracias.. exactamente es el problema.. si no existe la propiedad precio, 
todo sale sin problemas usando many-to-many.. pero aca no es igual.. 

Ya implementé el composite.. 

En el caso de la tabla producto:

<bag name="ProductServiceList" table="product_service" lazy="true" >
<key column="product_id" />
<composite-element class="ProductService">
<property name="Price" column="price" ... not-null="true"></property>
<many-to-one name="Service" column="service_id" class="Service"></many-to-one>
</composite-element>
</bag>

Todo compila sin problemas.. ahora mi duda es.. en el caso del mapping para la 
tabla "product_service" el key es un composite también??

salu2

Omar.. 
  ----- Original Message ----- 
  From: Antonio Sierra 
  To: [email protected] 
  Sent: Monday, January 22, 2007 11:45 AM
  Subject: [NHibernate-Hispano] Re: Ayuda en relación N a N


  Cierto.

  No me habia fijado antes en ese detalle.



  2007/1/22, "Andrés G. Aragoneses [ knocte ]" <[EMAIL PROTECTED]>: 

    Antonio Sierra escribió:
    > No es necesario hacer el mapping de la clase intermedia. 
    >
    > Cuando defines el mapping en las clases correspondientes a la relacion N
    > a N (en tu caso productos y servicios) tienes que definir en ellas la
    > relacion y la columna de la relacion que van a tomar como 
    > identificacion,  etc.
    >
    > Te pongo un ejemplo de una clase mia "articulos" que tenia relacion N a
    > N con otra llamada "materias". Es un ejemplo de como se define la
    > relacion, tu puedes configurarlo como mejor te venga. 
    >
    > <bag name="MateriasList" table="articulos_materias" lazy="true"
    > inverse="false">
    >       <key column="Idarticulo" />
    >       <!-- inverser="true"--> 
    >       <many-to-many class="DataLayer.Materias, DataAccess"
    > column="Idmateria" />
    >     </bag>
    >
    > "articulos_materias" seria la tabla intermedia que utilizo. Dentro de 
    > esta la columna identificadora del articulo es la "Idarticulo" y la que
    > identifica a la materia es "Idmateria". Como se ve la clase "materias"
    > esta definida en el namespace "Datalayer" del assembly "DataAccess". 
    >
    > No tiene mas. Espero que te sirva.

    Bueno, en el caso de Omar, en el que tiene un atributo de la relación,
    sí que tiene más. Tendrás que usar composite-element. Mira en la ayuda.
    Un saludo y suerte. 

            Andrés  [ knocte ]

    --




  

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