毕业生网站:多条件搜索

时间:2022-05-22 05:38:30

开始搜索条件比较少,我就判断如果第一个有,第二个没有是什么情况;第一个没有,第二个有时什么情况;两个都有是什么情况;两个都没有是什么情况。开始这样凑合还能用,后来增加至六七个筛选条件我们就换了种思路:

当用户登录时先判断一下,如果是就业中心的人登陆,就显示整个学校的信息,若是院系登陆,就先筛选一下,只能让他们看到自己院系下的学生,然后判断一下第一个条件是否为空,如果不空的话,就在上面的基础上筛选,如果为空,就看第二个条件,然后同上

          var upload = db.UploadTb.Include("applInfoModel").Where(m => m.Department == user.DepartName);
            if (Session["Type"].ToString() == "1")
            { upload = db.UploadTb.Include("applInfoModel").Where(m => m.Department == user.DepartName); }
            else
            { upload = db.UploadTb.Include("applInfoModel"); }


            if (av.upload.Name != null)//姓名
                upload = upload.Where(m => m.Name.Contains(av.upload.Name));
            if (av.upload.StudentNumber != null)//学号
                upload = upload.Where(m => m.StudentNumber.Contains(av.upload.StudentNumber));
            if (av.upload.EntranceYear != null)//入学时间
                upload = upload.Where(m => m.EntranceYear == av.upload.EntranceYear);
            if (av.upload.GraduationTime != null)//毕业时间
                upload = upload.Where(m => m.GraduationTime == av.upload.GraduationTime);

这样就省去了之前那样的好多判断条件