Buenos días, quería que alguien me tire alguna punta de como traducir la
siguiente consulta HQL.
Tengo 2 clases: Usuario y Pin, donde usuario tiene Pins con la siguiente
configuración en el mapping hbm
<set name="Pins" table="Pin_por_Usuario" >
<key column="id_usuario" />
<many-to-many class="Pin">
<column name="id_pin" />
</many-to-many>
</set>
Quiero obtener como resultado, los usuarios y los pines (en caso de
existir) y de cumplir con el criterio del where.
consulta hql: "select usuarios, pins from Usuario usuarios left join
usuarios.Pins pins where usuario.nombre == paramNombre"
Si realizo esta consulta con hql, me devuelve cada registro con el Usuario
y Pin (si corresponde) o solo el Usuario.
Intenté realizarlo con QueryOver, pero hay algo que no me funciona, o no
termino de comprender
Pin pins = null;
var queryOver = Session.QueryOver<Usuario>().Where(u => u.Nombre == nombre);
IList<object> resultado = queryOver.Left.JoinAlias(u => u.Pins, () => pins)
.SelectList(list => list
.Select(u => u)
.Select(u => pins))
.List<object>();
Arroja NullReferenceException y me imagino que viene por la variable "pins"
(.Select(u => pins))
Entonces saco la línea ".Select(u => pins)" para probar si funciona y
ahora el problema que arroja es
:"NHibernate.QueryException : could not resolve property: of:
Domain.Usuario"
Si remplazo la línea ".Select(u => u)" por ".Select(u => u.Id)", devuelve
correctamente el resultado.
¿Alguien me podría iluminar para resolver esta consulta?
Muchas gracias cualquier ayuda que me puedan brindar
Saludos,
Andrés Falcón.
--
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano
---
Has recibido este mensaje porque estás suscrito al grupo "NHibernate-Hispano"
de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos
electrónicos, envía un correo electrónico a
[email protected].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.