Bueno, gracias por vuestras respuestas, no esperaba tantas ni tan
rápidas.

Todos coincidís en que no hay herencia así que seguramente he modelado
mal. Lo que ha pasado es lo siguiente.

Se trata de una aplicación relacional que estoy intentando migrar a
nhibernate. En este caso es vital que no exista mas de 1 reparación
por avería. La relación es  de 1 a 0 o 1, no de 1 a varios, por eso
hice coincidir la primary key con la foreign key.

He usado una herramiente ( Nconstruct Lite ) para generar los hbm y
las clases. Esta herramienta detecta herencia automaticamente. Lo que
hace es que cuando una tabla tiene una primary key que es a su vez
foreign key en una relación, convierte a esta tabla en subclase, y me
generó el mapeo que os he posteado.

En principio me pareció genial, de hecho el modelo se adapta bien a
los controles de asp.net. Puedo ver en un gridview los datos de la
averia y su reparación  y desde un detailsview puedo dar altas y bajas
como si se tratase de una unica tabla. O sea, los formularios que ya
tengo siguen funcionando. Solo falla en el caso os decía.

No sé si he conseguido explicarme. Ahora mi problema es conseguir que
la nueva capa de acceso a datos que estoy desarrollando me afecte lo
menos posible al resto de la aplicación. y me parece que la solucion
que me dais no es práctica. Se me ocurren otras,  juntar las dos
tablas en una o a lo mejor crear una vista y mapearla. Mi pregunta es
si no hay forma de conseguir esto desde nhibernate, sin cambiar el
modelo de datos.

Gracias otra vez











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