zoukankan      html  css  js  c++  java
  • 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)))))));

        }

  • 相关阅读:
    MVC3 的路由Test
    表连接
    Moq MVC 初窥门径(一)
    FATAL ERROR: JS Allocation failed process out of memory
    版本号的意义
    JavaScript 类型的隐式转换
    翻译foreach语句
    一次http请求的全过程(附mmap文件下载)
    AOP学习笔记
    Kindle3之中文乱码问题
  • 原文地址:https://www.cnblogs.com/lyeo/p/3938345.html
Copyright © 2011-2022 走看看