Nhibernate Criteria 多个or条件查询
sql: select * from table t where (t.name like '%张三%' or t.schoolName like '%张三%' or t.cityname like '%张三%')
用Nhibernate Criteria就可以写成
var criteria = NHibernateSessionReader.CreateCriteria(typeof(Contract));
if (!string.IsNullOrEmpty(keyWord))
{
criteria.Add(Expression.Like("name", keyWord, MatchMode.Anywhere)
|| Expression.Like("school", "%" + keyWord + "%")
|| Expression.Like("cityname", "%" + keyWord + "%")
|| Expression.Like("province", "%" + keyWord + "%")
|| Expression.Like("UserName", "%" + keyWord + "%"));
}
或者
if (!string.IsNullOrEmpty(keyWord))
{
criteria.Add(
Restrictions.Or(Expression.Like("name", keyWord, MatchMode.Anywhere),
Restrictions.Or(Expression.Like("school", keyWord, MatchMode.Anywhere),
Restrictions.Or(Expression.Like("cityname", keyWord, MatchMode.Anywhere),
Restrictions.Or(Expression.Like("province", keyWord, MatchMode.Anywhere),
Restrictions.Or(Expression.Like("UserName", keyWord, MatchMode.Anywhere),
Restrictions.Like("UserName", keyWord, MatchMode.Anywhere)))))));
}
最新文章
- input输入
- Sphinx和coreseek检索引擎
- css3 -- 伪类与伪元素
- MySql 数据操作类
- Thrift搭建分布式微服务(一)
- dubbo/dubbox部署资料收集
- Jersey(1.19.1) - Client API, Ease of use and reusing JAX-RS artifacts
- F - Count the Colors - zoj 1610(区间覆盖)
- vue实现ajax滚动下拉加载,同时具有loading效果
- 浅析前端开发中的 MVC/MVP/MVVM 模式
- 《跟我学IDEA》五、快捷键(编码利器)
- [SHOI2008]循环的债务
- @Autowired和@Resource注解的一个意外重要区别
- Git使用五:回到过去
- KM算法小结
- map文件的使用
- HttpDebug下载
- 简单实用UML关系图解
- easyui的日期控件
- Redis列表
热门文章
- GoAhead2.5移植到ARM教程
- centos7安装apache 新手入门 图文教程
- HDU 4714 Tree2cycle (树形DP)
- POJ 2104 &;&; POJ 2761 (静态区间第k大,主席树)
- C# 去掉webapi返回json所带的转义字符
- servlet 3.0特性说明
- 如何设置eclipse不同的workspace共享配置
- [Git] An efficient GIT workflow for mid/long term projects
- 观察者模式与Guava EventBus
- 在Spark上运行TopK程序