Jo... mira que era fácil con LINQ...

Me da los resultados correctos. Gracias!

On 23 mar, 18:06, José F. Romaniello <[email protected]> wrote:
> no vi que era bidireccional, es
>
> Por otro lado esto no parece ni Hql ni linq
>
> >  from autor in Autor where not :idBook in
> > (select libro.ID from autor.Libros libro)
>
> Otra opción podría ser en hql:
> from Autor a, Book b
> where b.id = :bookId
>          and b not in elements(a.Books)
>
> (notar que id en minuscula no es arbitrario.. es un shortcut cuando no sabes
> el nombre de la propiedad ID, siempre funciona en hql)
>
> en linq:
> var resultado = session.Query<Autor>().Where(a => !a.Books.Any(b => b.Id =
> bookId)));
>
> El 23 de marzo de 2011 13:17, Juan Cuello <[email protected]> escribió:
>
>
>
>
>
>
>
> > No permite una lista cuando haces select l.Autores from Libro l ....
>
> > On 23 mar, 16:17, Rodrigo Marquez <[email protected]> wrote:
> > > Hay un error en la consulta que te mandó José, según yo sería algo así:
> > > from Autor a
> > > where a not in (select l.Autores from Libro l where l.id = @libro)
>
> > > No sé si lo viste...
> > > El 23 de marzo de 2011 08:37, Juan Cuello <[email protected]>
> > escribió:
>
> > > > Ni una ni otra :P
>
> > > > Seguiré mirando,
>
> > > > Gracias
>
> > > > On 23 mar, 13:38, José F. Romaniello <[email protected]> wrote:
> > > > > Creo que en Hql podria funcionar algo así;
> > > > > from Autor a
> > > > > where not a in (select l.Autores from Libro l where l.id = @libro)
>
> > > > > Y en linq algo así
>
> > > > > from a in session.Query<Autor>
> > > > > from l in session.Query<Libro>()
> > > > > where l.id = .. && !l.Autores.Contains(a)
> > > > > select a;
>
> > > > > El 23/03/11, Juan Cuello <[email protected]> escribió:
>
> > > > > > Hola buenas,
>
> > > > > > Estoy haciendo una consulta HQL y queda patente que no sirvo para
> > > > > > esto.
>
> > > > > > Tengo una relación many-to-many entre Libros y Autores, y quiero
> > hacer
> > > > > > una consulta que me devuelva los autores que no están relacionados
> > con
> > > > > > un libro.
>
> > > > > > Mi primera idea ha sido con HQL: from c in Autor where :idBook not
> > in
> > > > > > (c.Libros) y me da un sintax error en la generación de SQL
>
> > > > > > En LINQ no tengo ni idea de cómo hacerlo.
>
> > > > > > Ayuda please
>
> > > > > > --
> > > > > > Para escribir al Grupo, hágalo a esta dirección:
> > > > > > [email protected]
> > > > > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano
>
> > > > > --
> > > > > Enviado desde mi dispositivo móvil
>
> > > > --
> > > > 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

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