2011-01-27 20 views
5

Acabo de empezar a usar LINQ con NHibernate en NHibernate 3, después de haber usado ICriteria previamente.NHibernate 3 Caché de consultas Linq

He aquí un ejemplo de consulta:

ISession session = NHibernateSessionManager.Instance.GetSession(); 

var results = from project in session.Query<Project>() 
       where project.ProjectState == ProjectState.Archive 
       orderby project.ProjectNumber 
       select project; 

return results.ToList(); 

¿Cómo se configura para que la memoria caché? He echado un vistazo y otras preguntas parecen usar una sintaxis diferente (¿quizá desactualizada?) O quizás lo estoy haciendo mal ...

+0

Probar "results.Cacheable(). ToList();" – Phill

Respuesta

9

Use el método de extensión Cacheable() en su Queryable antes de llamar al ToList().

+0

No creo que haya documentación oficial aún ... Empecé a actualizar los documentos existentes hace unos meses, pero perdí la motivación. Creo que está cubierto en el libro de Jason Dentler. –