条件筛选

1、条件筛选:Lambda表达式
if (AcademeID>0) {
listStudent = listStudent.Where(m => m.AcademeID == AcademeID).ToList();
}
前面是Linq的写法这里用了Where方法,()括号里面是Lambda表达式
AcademeID>0,时,对listStudent进行筛选
listStudent=上面声明的listStudent
=>是运算符,左边是参数(如果有),右边是表达式或者语句
m是一个自己命名的参数,可以命名为其它字母
以上面例子为例:左边的m是一个参数相当于要进行筛选的listStudent,m它要返回来的是右边表达式或者语句执行后的结果:右边是筛选的条件m(listStudent)里面的AcademeID如果等于传过来的AcademeID时就返回来结果,再转化为列表ToList()

2、条件筛选:模糊查询
条件筛选
当在页面输入学号或者姓名查询时,可实现模糊查询

if (!string.IsNullOrEmpty(StudentDetail)){
listStudent = listStudent.Where(m => m.StudentName.Contains(StudentDetail) || m.StudentNumber.Contains(StudentDetail)).ToList();
}

判断字符串为空,加!是取反即为不等于空
StudentDetail是输入框里面的内容
StudentDetail包含StudentNumber、StudentName
Contains()这是一个判断的方法,返回一个值,看这个值是否出现在指定的字符串中。

m代表listStudent,判断StudentDetail里面的字符串是否在StudentName或StudentNumber者里面出现过。

在输入框(StudentDetail)里面输入了姓名(StudentName)白字执行效果

条件筛选
在输入框(StudentDetail)里面输入了学号4785 (StudentNumber)的执行效果
条件筛选
在StudentDetail里面输入的内容只要StudentName或者StudentNumber里出现过,就会把结果全部返回来。