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)))))));

        }

  • 相关阅读:
    常见 PL.SQL 数据库操作
    PL/SQL常见设置--Kevin的专栏
    pl/sql编程
    添加List集合覆盖问题
    程序猿感情生活的那些事
    表达式树-理解与进阶
    白话神经网络
    EF Core 数据验证
    c#8内插逐字字符串增强功能
    我的新博客
  • 原文地址:https://www.cnblogs.com/lyeo/p/3938345.html
Copyright © 2011-2022 走看看