Estoy tratando de recuperar todas las colecciones (producto no cartesiano) de una entidad principal, pero no puedo averiguar cómo obtener los nietos. estructura de la tabla se ve así:NHibernate, obtenga la colección nietos utilizando QueryOver w/Future
El código siguiente obtiene mis padres y sus colecciones child1 y CHILD2, así como su colección ParentChild3, pero no sé cómo estructurar la consulta para obtener los nietos Niño3 (y diferirlos a Future()).
var parent = _session
.QueryOver<Parent>()
.Where(x => x.Id == id)
.Future<User>();
var children1 =_session
.QueryOver<Parent>()
.Where(x => x.Id == id)
.Fetch(x => x.Children1).Eager
.Future<Parent>();
var children2 =_session
.QueryOver<Parent>()
.Where(x => x.Id == id)
.Fetch(x => x.Children2).Eager
.Future<Parent>();
var parentChildren3 =_session
.QueryOver<Parent>()
.Where(x => x.Id == id)
.Fetch(x => x.ParentChildren3).Eager
.Future<Parent>();
// how to get children3, now?
return parent.SingleOrDefault();
Semi relacionado: ¿esta es la mejor manera de obtener todas las colecciones? ¿Es mejor (y posible) usar una consulta que obtenga el resultado con join?
Por desgracia, debe asignar como compuesto (y mientras éste no tiene columnas de carga útil, otros lo hacen), por lo que no se puede salir con ManyToMany. – heyseuss