2010-10-10 14 views
6

Estoy en el proceso de aprender QueryOver, pero no puedo por mi vida encontrar la forma de hacer muchas consultas simples a muchas.NHibernate QueryOver con ManytoMany

He escrito lo siguiente:

  var result = Session.CreateCriteria(typeof (Product)) 
       .CreateAlias("Categories", "categories") 
       .Add(Property.ForName("categories.Id").Eq(categoryId)) 
       .List<Product>(); 

Con ello se consigue el resultado deseado. Básicamente tengo

producto> ProductCategory < Categoría

ProductCategory solo tiene ProductId/CategoryId, y yo estoy tratando de seleccionar todos los productos de una categoría específica.

No tengo idea de por dónde empezar tratando de hacer esto con queryover.

Respuesta

13

Terminé resolviendo esto después de mucha perseverancia.

  var result = Session.QueryOver<Product>() 
          .Right.JoinQueryOver<Category>(x => x.Categories) 
          .Where(c => c.Id == categoryId) 
          .List(); 

Qué misión :)

+0

impresionante. gracias:) –

Cuestiones relacionadas