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

entity framework 动态条件

时间:2016-08-01 06:54:00      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

entity framework 动态条件

 

问题:在实际编码过程中,根据不同的选择情况,会需要按照不同的条件查询数据集

如:状态confirmStatus ,如果为空的时候,查询全部,如果有具体值的时候,查询相应的值

     同时还有其他条件,外键编号 task 等等。

 

这个时候,需要根据条件的值来判断是否增加该条件

 

using (CadalEntities cadalEntities = new CadalEntities())
{

  string taskId = 12;

  string itemConfirmStatus == "";

  //构建动态条件数组

  List<Expression<Func<V_TaskItem, bool>>> where = new List<Expression<Func<V_TaskItem, bool>>>(); 

  //添加外键条件过滤

  where.Add(x => x.task == taskId); 

  //判断是否需要添加其他条件  

  if (!string.IsNullOrEmpty(itemConfirmStatus))
  {
    where.Add(x => x.confirmStatus == itemConfirmStatus);
  }

  else

  {

    where.Add(x=>x.confirmStatus =="1" || x.confirmStatus =="3");

  }

  //定义查询 V_TaskItem查询的实体对象

  IQueryable<V_TaskItem> query = null;

  //加载查询条件

  foreach (var w in where)

  {

    query= cadalEntities.V_TaskItem.Where(w);

  }

  //进行实际查询

  int count = query.Count();

  var list = query.OrderBy(x => x.id).Skip(requestStart).Take(requestLength).ToList();

}

 

结合网上众多例子,终于摸索出来了。

entity framework 动态条件

标签:

原文地址:http://www.cnblogs.com/eshinex/p/5724486.html

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