½鹿True+ 2019-06-13 18:00 采纳率: 100%
浏览 774
已采纳

lambda表达式相关,将判断改写

如何能将如下代码里的判断用lambda表达式代替,主要是我图里框起来的部分,万分感谢

//获取当前登录用户授权的行政区划编码
            List<string> AreaCodeList = area.GetUserDistrictCode(AreaCode);

            if (string.IsNullOrEmpty(queryJson))
            {
                return this.BaseRepository("ground_report", "MySql").FindList(a => true, pagination).ToList();
            }
            else
            {
                Expression<Func<Grw_MonitorPointEntity, bool>> exp = a => true;
                if (HydGeoUnit1 != "") exp = exp.And(a => a.HydGeoUnit1.Contains(HydGeoUnit1));
                if (HydGeoUnit2 != "") exp = exp.And(a => a.HydGeoUnit2.Contains(HydGeoUnit2));
                if (InputValue != "") exp = exp.And(a => a.MonitorPointID.Contains(InputValue));
                exp = exp.And(a => a.Year == Year);
                if (AreaCode != "00")//非全国
                {
                    if (AreaCodeList != null)//授权的行政区划List不为空
                    {
                        if (AreaCodeList[0] != "000000")//非最高级别
                        {
                            if (AreaCodeList.Count > 1)
                            {
                                //不知道咋写
                            }
                            else
                            {
                                exp = exp.And(a => a.AreaCode.StartsWith(AreaCodeList[0].Substring(0, AreaCode.Length)));
                            }
                        }
                    }
                }
                    }
  • 写回答

1条回答 默认 最新

  • 茂大叔 2019-06-14 00:43
    关注
    exp = exp.And(a => AreaCodeList.Exists(x => a.AreaCode.StartsWith(x.Substring(0, AreaCode.Length))));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥40 servlet的web程序部署出错
  • ¥50 activiti 新建流程系列问题
  • ¥15 如何在gazebo中加载机械臂和机械手
  • ¥15 纯运放实现隔离采样方案设计
  • ¥20 easyconnect无法连接后缀带.com的网站,一直显示找不到服务器ip地址,但是带有数字的网站又是可以连接上的,如何解决
  • ¥15 电脑开机过商标后就直接这样,求解各位
  • ¥15 mysql , 用自己创建的本地主机和用户名 登录不上
  • ¥15 关于#web项目#的问题,请各位专家解答!
  • ¥15 请问如何在Ubuntu系统中安装使用microsoft R open?
  • ¥15 jupyter notebook