NHibernate、缓存和自定义SQL查询

NHibernate、缓存和自定义SQL查询,nhibernate,Nhibernate,我们使用NHibernate和Memcache作为二级缓存。有时需要更高级的查询或批量查询操作。从《Nhibernate in Action》一书中,他们提出了以下建议: “我们认为ORM不适合大规模更新(或大规模删除)操作。如果 您有这样一个用例,不同的策略几乎总是更好:调用存储的 过程,或使用直接SQL UPDATE和DELETE语句 特定用例。” 我担心的是,对底层数据库的查询不会反映在缓存中(至少在缓存过期之前是这样),我想知道是否有人提出了有效的策略来混合和匹配NHibernate与定

我们使用NHibernate和Memcache作为二级缓存。有时需要更高级的查询或批量查询操作。从《Nhibernate in Action》一书中,他们提出了以下建议:

“我们认为ORM不适合大规模更新(或大规模删除)操作。如果 您有这样一个用例,不同的策略几乎总是更好:调用存储的 过程,或使用直接SQL UPDATE和DELETE语句 特定用例。”

我担心的是,对底层数据库的查询不会反映在缓存中(至少在缓存过期之前是这样),我想知道是否有人提出了有效的策略来混合和匹配NHibernate与定制SQL语句

是否有任何方法可以让(使用自定义sql执行的)批量更新语句反映在二级缓存中?我知道可以手动逐出,但这会从缓存中删除项目,从而增加对数据库的命中率


社区是否有有效解决此问题的解决方案?

据我所知,没有任何方法可以使二级缓存与MassUpdate保持最新。但是,您可以按照中的说明部分删除缓存。

社区也希望得到公认的答案。。。。