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