Buenas tardes a tod@s! Tengo una pregunta que creo que lo mismo es básica pero no encuentro forma de hacer:
Necesito definir un set en un archivo de mapping con unas necesidades especiales. He leído varias páginas pero no encuentro nada. Supongamos que tengo un mapping de una Vista SQL <class name="Namespace.ViewListadoFacturas, Assembly" table="ViewListadoFacturas"> <id name="CodigoFactura" column="[CodigoFactura]" type="System.Guid"> <generator class="assigned"/> </id> <property name="CodigoCliente" column="[CodigoCliente]" access="field.pascalcase-underscore" not-null="true" type="System.Guid"/> </class> Y supongamos que luego un mapping de una clase como este: <class name="Namespace.NotasElementos, MyAssembly" table="NotasElementos" > <id name="Id" column="CodigoNota" type="System.Guid"><generator class="guid"/></id> <property name="CodigoElementoAsociado" column="CodigoElementoAsociado" access="field.pascalcase-underscore" not-null="false" type="System.Guid" insert="true" update="true"/> </class> Donde CodigoCliente de la Vista y CodigoElemento asociado guardan los mismos valores y por tanto podríamos hacer un inner join entre ellos pero se llaman diferente. El nombre es diferente porque en la clase NotasElementos también guardo Notas de Proveedores, Usuarios, etc... De ahí sale el concepto de CodigoElementoAsociado. Al usar Guids evito que dos elementos de clases diferentes compartan ids. La pregunta es: ¿Como puedo mapear las notas del cliente en la vista? Yo necesito hacer algo así: <set name="NotasElementosList" cascade="none" inverse="true" lazy="true" access="field.pascalcase-underscore"> <Source key> <column name="CodigoCliente" /> </Source key> <Target key> <column name="CodigoElementoAsociado"/> </Target key> <one-to-many class="MyNamespace.NotasElementos, GIOFACT_DAL"/> </set> ¿Es posible hacer esto? La verdad es que esto solucionaría una gran parte de las necesidades que tengo pendientes. Ni que decir que agradezco enormemente por adelantado cualquier ayuda que pueda recibir. Un saludo. -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
