📅  最后修改于: 2023-12-03 15:29:47.917000             🧑  作者: Mango
LINQ 是一种用于 .NET Framework 的语言集成查询技术。它支持各种数据源(如对象、集合、XML、数据库等)的查询,并提供统一的查询语法。
在本例中,我们要使用 LINQ 来对员工列表进行排序,并且只选择属于 XYZ 部门的员工。具体实现如下:
// 员工类
public class Employee
{
public string Name { get; set; }
public string Department { get; set; }
public int Salary { get; set; }
}
// 员工列表
List<Employee> employees = new List<Employee>
{
new Employee{Name="Tom", Department="XYZ", Salary=8000},
new Employee{Name="John", Department="XYZ", Salary=6000},
new Employee{Name="Mary", Department="ABC", Salary=5000},
new Employee{Name="Lucy", Department="XYZ", Salary=7000},
new Employee{Name="Jerry", Department="ABC", Salary=4000},
};
// LINQ 查询
var query = from emp in employees
where emp.Department == "XYZ"
orderby emp.Salary descending
select emp;
// 输出结果
foreach (var emp in query)
{
Console.WriteLine("{0} - {1} - {2}", emp.Name, emp.Department, emp.Salary);
}
在上面的代码中,我们首先定义了一个 Employee 类,包含员工的姓名、所属部门和工资三个属性。然后创建了一个员工列表,其中包含了几个来自不同部门的员工。
接下来,我们使用 LINQ 查询对员工列表进行筛选和排序。首先使用 where
关键字筛选出属于 XYZ 部门的员工,然后使用 orderby
关键字按照工资降序排序。最后,使用 select
关键字选择只包含姓名、部门和工资属性的员工对象。
最终的结果是按照工资降序排列的 XYZ 部门员工列表,我们使用 foreach
循环遍历输出了每个员工的属性值。
以上就是使用 C# 程序和 LINQ 技术根据工资降序排序员工列表的完整示例。