Hola Charlie, Es una pregunta bastante amplia asi que, mas que darte respuestas exactas, te orientare. Tampoco estoy exactamente seguro de los detalles tecnicos de las ideas que te cuento pero estoy bastante seguro de que son posibles. Esperemos que los que saben, cuando se les pase la borrachera, amplien.
La decision de utilizar una entidad intermedia o no surge de tu analisis del dominio, no de las necesidades de mapeo. Sugiro que releas NH In Action porque me llama la atencion que diga que no es aconsejable. En mi opinion que sea o no aconsejable es una cuestion del dominio. Luego, con respecto a los mappings, aunque no es usual es posible que en los mappings tengas relaciones que no estan en tu dominio, justamente con proposito de ajacutar consulta. Creo que esta es una de las caracteristicas que hacen de NH un ORm respetuoso de las decisiones de diseño del dominio. Estoy seguro de que puedes plantear estas relaciones con o sin entidad intermedia y siempre sin colocar referencias desde al Programa al Equipo. ---------------------------------- Carlos Peix 2010/12/30 Charlie <[email protected]> > Hola a todos > > Sorry que los moleste tan temprano, > > Estoy empezando con los mappings de una aplicación y para entender los > conceptos para trabajar con catálogos necesito escuchar comentarios ya que > no logro captar los conceptos. > > Miren tengo dos entidades Equipo y programa. La idea es que programa sea un > catalogo. > > Ahora los equipos pueden registrar de este catalogo n programas > > Programa es independiente y no sabe nada acerca de equipo > > Inicialmente pienso que seria una relacion many-to-many esto por que no > quiero un FK en programa ya que es un catalogo > > > > Ahora las dudas que tengo son : > > > *Question 1) *Si programa no sabe nada de equipo es necesario en su > mapping anexarle la etiqueta many-to-many hacia equipo?. > > Tal vez lo que pregunte a continuación no suene lógico pero es para saber > como se manejan las relaciones de catálogos en NHibernate > > *Question 1.A) *"Ahora bien si NO es necesario, es posible hacer HQLs de > Programa para obtener que equipos tienen registrado x o y programa" > > > > > Del lado de equipo puedo hacer un many-to-many normal y no veo problema > alguno. > > > > Comentario final > > Leyendo el NHibernate in Action comenta que los many-to-many no son > aconsejables ya que la entidad intermedia terminara teniendo atributos > adicionales ademas de los Id de las entidades involucradas y que lo mejor > seria utilizar una entidad como tal para la relación y que esta tenga un > many-to-one en este caso a Equipo y otro many-to-one a Programa. > > *Question 2)* Del comentario final así es como se debe manejar en > NHibernate? > > *Question 3)* Si la estoy regando díganme como se debe hacer > > > -- > 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
