📅  最后修改于: 2023-12-03 14:41:20.267000             🧑  作者: Mango
LINQ是.NET Framework提供的一个强大的查询语言,可以方便地对集合、数组、列表等数据源进行查询和筛选。其中的“From where”语句是LINQ的基础之一,它允许我们从数据源中筛选出满足条件的数据。
var result = from obj in data_source
where condition
select obj;
其中,data_source
是我们要查询的数据源,condition
是我们要筛选的条件,obj
是我们要查询的对象。这个语句可以看作是一个查询表达式,表示从data_source
中查询出满足condition
的所有obj
。等价于下面的方法调用:
var result = data_source.Where(obj => condition);
假设我们有一个学生成绩列表List<StudentGrade>
,每个对象包含学生的姓名和成绩。现在我们要查询出分数大于等于60的学生列表:
class StudentGrade {
public string Name { get; set; }
public int Grade { get; set; }
}
var studentList = new List<StudentGrade> {
new StudentGrade { Name = "Alice", Grade = 70 },
new StudentGrade { Name = "Bob", Grade = 50 },
new StudentGrade { Name = "Charlie", Grade = 80 },
};
var result = from student in studentList
where student.Grade >= 60
select student;
// 或者使用方法调用
var result = studentList.Where(student => student.Grade >= 60);
这个查询会返回两个学生对象,分别是Alice
和Charlie
。
where
语句中,我们可以使用各种逻辑运算符和比较运算符,比如&&
、||
、>
、<
等等。where
语句来对数据进行更多的筛选。这些筛选语句会被依次执行,筛选出最终的结果。使用“From where”语句可以方便地从数据源中筛选出满足条件的数据,是LINQ的基础语法之一。在实际开发中,我们可以灵活地运用这一语法,对各种数据进行查询和筛选。