zoukankan      html  css  js  c++  java
  • linq IEnumerable dynamic Where Select Join


    var credits = Biz.GetClaimCredit();// IEnumerable<dynamic>
    var errorImeis = RequestPara.IMEIs.Where(m => (m.IsCurrORG == 0 && credits.Any(c => c.BlankType == 0 && c.OrgUserId == m.OrgId)) || (m.IsCurrUser == 0 && credits.Any(c => c.BlankType == 1 && c.OrgUserId == RequestPara.UserId)));
    if (errorImeis != null && errorImeis.Count() > 0) return FailPara(string.Join(",", errorImeis.Select(d => d.IMEI)) + " 不可认领!");

    //判断集合不匹配的数据

      var errImei = para.DetailList.Where(i => !gps.Any(g => g.IMEI == i.IMEI));

    //分组取最大的一条数据集合
    var detail = await _taskDetailDal.Query(i => arr.Contains(i.taskid) && c.Contains(i.shop_code) && i.status == 1);
    detail = detail.GroupBy(i => i.shop_code).Select(j => j.OrderByDescending(k => k.taskid).FirstOrDefault()).ToList();


    long[] arr = tasks.Select(o => o.id).ToArray();
    var detail = await _taskDetailDal.Query(i => arr.Contains(i.taskid) && i.status == 1);
    tasks.ForEach(i => { i.Details = detail.Where(j => j.taskid == i.id).ToList(); });


    var modelTask = models.Select(i => new TaskHeaderDao { id = i.taskid, driverid = i.driverid, deliver_date = i.deliver_date, redundant = i.redundant.Replace("-", ","), taskname = i.taskname, create_user = userId, update_user = userId }).Distinct().ToList();

    //集合拼接
    newDetail = newDetail.Union(i.Details).ToList();

  • 相关阅读:
    git学习(一)
    访问注解(annotation)的几种常见方法
    对于元数据的理解
    常用注解介绍
    深入理解Java的接口和抽象类
    POI依据类型设置导出格式
    java泛型
    java 向上转型和向下转型
    cell设置背景颜色为啥不起作用
    Java反射获取对象VO的属性值(通过Getter方法)
  • 原文地址:https://www.cnblogs.com/yyzyou/p/12760590.html
Copyright © 2011-2022 走看看