Lọc tập hợp bằng mệnh đề Where trong C #. Một biểu thức truy vấn có thể có nhiều mệnh đề where.
Đầu tiên, hãy thiết lập một bộ sưu tập -
IList<Employee> employee = new List<Employee>() {
new Employee() { EmpID = 1, EmpName = "Tom", EmpMarks = 90, Rank = 8} ,
new Employee() { EmpID = 2, EmpName = "Anne", EmpMarks = 60, Rank = 21 } ,
new Employee() { EmpID = 3, EmpName = "Jack", EmpMarks = 76, Rank = 18 } ,
new Employee() { EmpID = 4, EmpName = "Amy" , EmpMarks = 67, Rank = 20} ,
}; Bây giờ, hãy sử dụng mệnh đề where để có được nhân viên có cấp bậc trên 5 và dưới 10.
var res = from e in employee where e.Rank > 5 where e.Rank < 10 select e;
Sau đây là mã -
Ví dụ
using System;
using System.Linq;
using System.Collections.Generic;
public class Demo {
public static void Main() {
IList<Employee> employee = new List<Employee>() {
new Employee() { EmpID = 1, EmpName = "Tom", EmpMarks = 90, Rank = 8} ,
new Employee() { EmpID = 2, EmpName = "Anne", EmpMarks = 60, Rank = 21 } ,
new Employee() { EmpID = 3, EmpName = "Jack", EmpMarks = 76, Rank = 18 } ,
new Employee() { EmpID = 4, EmpName = "Amy" , EmpMarks = 67, Rank = 20} ,
};
var res = from e in employee
where e.Rank > 5
where e.Rank < 10
select e;
foreach (var emp in res) {
Console.WriteLine("Name: "+emp.EmpName);
Console.WriteLine("Marks: "+emp.EmpMarks);
}
}
}
public class Employee {
public int EmpID { get; set; }
public string EmpName { get; set; }
public int EmpMarks { get; set; }
public int Rank { get; set; }
} Đầu ra
Name: Tom Marks: 90