我正在寻找使用NHibernate Criteria API构建复杂查询。我想验证标准是否按照我的预期构建,而不必实际运行查询。
这可能吗?是否有优雅的提示或技巧?
答案 0 :(得分:2)
一位同事最近这样做了
将每个条件查询封装在它自己的类(规范)中。 构建了一个表达式构建器,它将查询字符串吐出。 测试生成的表达式字符串是否与预期的表达式字符串匹配。
表达式构建器以递归方式遍历规范中的条件树以生成表达式字符串。
这是一般的想法,现在没有我的代码:)抱歉。
但是,我发现编写数据库集成测试以测试Nh标准要容易得多。 标准是否真的返回了我期望的数据。