Recuperación de entidades `HasMany` en una sola consulta - Fluent-NHibernate
Frecuentes
Visto 655 veces
1
Tengo una Entity
que alberga una colección de OtherEntity
en una relación de estilo muchos a muchos. El mapeo para esta propiedad se ve así:
HasManyToMany(x => x.OtherEntity)
.AsBag()
.Table("EntityToOtherEntityMapping")
.ParentKeyColumn("EntityId")
.ChildKeyColumn("OtherEntityId")
.Not.LazyLoad()
.Cascade.None();
Me doy cuenta de que al recuperar una colección de Entity
hay una consulta SQL separada para cada colección de OtherEntity
.
¿Cómo puedo hacer que Fluent-NHibernate ejecute esta recuperación en una consulta en lugar de n?
2 Respuestas
2
Agregue Fetch Join en su propiedad.
.Fetch.Join();
contestado el 03 de mayo de 12 a las 21:05
0
La respuesta resultó ser establecer FetchModel en Eager y seleccionar un ResultTransformer:
.SetFetchMode("Tags", FetchMode.Eager)
.SetResultTransformer(Transformers.DistinctRootEntity)
Respondido el 12 de junio de 12 a las 16:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas c# nhibernate fluent-nhibernate or haz tu propia pregunta.