回答
如果我们有一个复杂的动态搜索,我们通常会构造一个SearchParameter对象,然后将它传递给一个将构建我们的标准的方法。
例如,如果我们正在寻找一个人,我们可能有一个看起来像这样的搜索对象:
public class PersonSearchParameters
{
public string FirstName {get; set;}
public string LastName {get; set;}
public ICriteria GetSearchCriteria()
{
DetachedCriteria query = DetachedCriteria.For(typeof (Person));
//Add query parameters
Return query;
}
}
然后对于每个类型的搜索,我们就可以从创建单一标准该类,或者我们可以有多个搜索参数类并将它们链接在一起
我们使用HQL,但我们仍然试图围绕Criteria API来处理复杂查询。使用HQL时,我们必须管理大量的重复。
我不是HQL大师,但似乎用DetachedCriteria构建复杂的查询看起来更容易。 感谢您的回答 – 2009-01-13 22:10:45
我使用了非常多的Ayende太复杂了,你想做什么,你不能这样做?
基本上我们添加的是我们有一个接口,我们定义了所有我们想要搜索的字段,当我们要进行搜索时我们称之为这意味着我们可以轻松地改变我们正在搜索的内容。
此外,我们正在使用的Active Record项目(Hibernate的顶部)和TIS很酷,任务载荷被简化了,你缺少文档中有时确实 伤害欢呼
界面的事情听起来不错,你可以请在这里发布一些代码或某处可能是我的邮件地址 – 2009-01-15 21:47:06
- 1. 使用属性进行复杂的XPath搜索?
- 2. 使用lxml在xml中进行复杂搜索
- 3. 使用PrincipalSearcher进行复杂搜索过滤
- 4. 复杂全文搜索使用PlayFramework搜索/ Hibernate搜索
- 5. 使用NHibernate搜索的搜索建议
- 6. 在php和mysql中进行一个完整的复杂搜索
- 7. 执行MySql全文搜索使用NHibernate
- 8. 如何使用复杂的嵌套查询在FHIR上进行搜索
- 9. Drupal:使用Views快速搜索模块进行复杂过滤/排序
- 10. 使用T-SQL进行复杂搜索/筛选列中的文本
- 11. Lucene复杂结构搜索
- 12. 复杂的搜索问题
- 13. 复杂的搜索设计
- 14. 复杂搜索查询JPA
- 15. 复杂custom_field搜索与meta_query
- 16. 解析PFRelation复杂搜索
- 17. 使用grep进行搜索
- 18. 使用EntityFramework进行搜索
- 19. 使用NSOperation进行搜索
- 20. 使用xsl进行搜索
- 21. 如何使用nhibernate进行正确的搜索
- 22. 如何使用索引配置tolkenizers并使用Lucene和Nhibernate进行搜索
- 23. 复杂codeignitor用户搜索查询
- 24. 使用LINQ进行复杂SQL查询
- 25. ExtJS - 使用JsonReader对复杂对象进行null安全检索
- 26. 使用复杂的XML/JSON进行SmartGWT数据检索
- 27. 使用sqlite进行搜索索引?
- 28. 使用搜索索引进行筛选
- 29. 使用javascript进行二进制搜索
- 30. nHibernate复杂连接
这是同我使用 谢谢你 – 2009-01-13 22:08:38