NHibernate 3 Linq查询缓存 [英] NHibernate 3 Linq query caching

查看:100
本文介绍了NHibernate 3 Linq查询缓存的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在先前使用ICriteria之后,我刚开始在NHibernate 3中将LINQ与NHibernate一起使用.

I've just started using LINQ with NHibernate in NHibernate 3, after previously using ICriteria.

这是一个示例查询:

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();

如何将其设置为缓存?我环顾四周,其他问题似乎使用了不同的语法(也许已经过时了?),或者我做错了...

How do I set that to cache? I've had a look around and other questions seem to use a different (perhaps outdated?) syntax, or perhaps I'm doing it wrong...

推荐答案

在调用ToList()之前,在Queryable上使用Cacheable()扩展方法.

Use the Cacheable() extension method on your Queryable before calling ToList().

这篇关于NHibernate 3 Linq查询缓存的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆