我想将 Criteria 查询应用于内存中的实体集合,而不是数据库。这可能吗?让 Criteria API 像 LINQ 一样工作?或者,将 Criteria 查询转换为 LINQ 查询。
谢谢!
我想将 Criteria 查询应用于内存中的实体集合,而不是数据库。这可能吗?让 Criteria API 像 LINQ 一样工作?或者,将 Criteria 查询转换为 LINQ 查询。
谢谢!
听起来您正在滚动自己的缓存机制。我强烈建议您查看 NHibernate 的二级缓存。它可以优雅地处理许多复杂的场景,例如在更新基础表时使查询结果无效。
http://ayende.com/Blog/archive/2009/04/24/nhibernate-2nd-level-cache.aspx
我不相信您可以使用 Criteria 来查询内存中的集合并考虑它似乎没有多大意义。如果我正确理解了所有内容,那么您已经针对您的数据库进行了查询。我建议调整您的原始查询(无论您选择哪种方法)以包含所有过滤器。或者您可以使用 LINQ(如您所建议的那样)来优化您的结果。
另外,您想从内存中查询的原因是什么?