关闭

Linq to sql 实现多条件的动态查询(方法一)

标签: linqsqlstring
6130人阅读 评论(0) 收藏 举报
分类:

      多条件动态查询在开发中太常见了,使用sql语句拼接很容易实现,但是在使用linq 的时候我却觉得很麻烦,思来想去,其实不然,linq 实现多条件动态查询一样可以变的很简单。话不多说,直接上例子,供大家参考。

      根据5个动态条件查询:

        /// <summary>
        /// Linq to sql 多字段动态查询
         /// </summary>
        /// <returns></returns>
        private List<TVacant> ViewBinding(ModelDataContext db,string fyno,string brd,string area,string city,string pos)
        {
            Expression<Func<TVacant, bool>> expr = n => GetCondition(n,fyno,brd,area,city,pos);
            var xQuery = db.TVacant.Where<TVacant>(expr.Compile());
            return xQuery.ToList<TVacant>();
        }
        private bool GetCondition(TVacant tb,string fyno,string brd,string area,string city,string pos)
        {
            bool boolResult = true;
            if (!String.IsNullOrEmpty(fyno))
            {
                boolResult &= tb.fy_no == fyno;
            }
            if (!String.IsNullOrEmpty(brd))
            {
                boolResult &= tb.brd_no == brd;
            }
            if (!String.IsNullOrEmpty(area))
            {
                boolResult &= tb.area_no == area;
            }
            if (!String.IsNullOrEmpty(city))
            {
                boolResult &= tb.city_no == city;
            }
            if (!String.IsNullOrEmpty(pos))
            {
                boolResult &= tb.pos_no == pos;
            }
            return boolResult;
        }


 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:483647次
    • 积分:5530
    • 等级:
    • 排名:第4761名
    • 原创:86篇
    • 转载:37篇
    • 译文:0篇
    • 评论:100条
    最新评论