码迷,mamicode.com
首页 > 其他好文 > 详细

Entity Framework 第十篇 条件查询

时间:2016-06-23 11:03:45      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:

业务类中 我们根据条件来动态的查询

创建IQueryable接口

 public IQueryable<TEntity> GetQueryable()
        {
            IQueryable<TEntity> query = dbContext.Set<TEntity>();
            return query;
        }

 

为什么创建IQueryable接口IQueryable会在调用ToList()或者Count()等方法的时候,才回向数据库查询,所以只会向数据库提交一次带条件的查询语句,从而提升了性能。

 

 public IList<Shop> Query(Shop model)
        {

            IQueryable<Shop> query = GetQueryable().Where(m => m.DelStatus == 0);
            if (model.ShopID != null)
            {
                query = query.Where(m => m.ShopID == model.ShopID);
            }
            if (!string.IsNullOrEmpty(model.Name))
            {
                query = query.Where(m => m.Name.Contains(model.Name));
            }
            if (!string.IsNullOrEmpty(model.Province))
            {
                query = query.Where(m => m.Province == model.Province);
            }
            if (!string.IsNullOrEmpty(model.City))
            {
                query = query.Where(m => m.City == model.City);
            }
            if (!string.IsNullOrEmpty(model.Area))
            {
                query = query.Where(m => m.Area == model.Area);
            }
            query = query.OrderBy(m => m.ShopID);
            return query.ToList();

        }

 

Entity Framework 第十篇 条件查询

标签:

原文地址:http://www.cnblogs.com/njcxwz/p/5609892.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!