Home »
.Net »
C# Programs
C# - Sort employees list based on salary, department using LINQ
Learn, how to sort a list of employees based on salary and whose department is ABC using Linq in C#?
By Nidhi Last updated : April 01, 2023
Here we will create a list of employees and then sort a list of employees using the OrderBy() method based on salary and then check the department of employees using the Linq Where() method.
C# program to sort employees list based on salary, department using LINQ
The source code to sort a list of employees based on salary and whose department is ABC using Linq is given below. The given program is compiled and executed successfully on Microsoft Visual Studio.
//C# program to sort the list of employees based on
//salary whose department is ABC.
using System;
using System.Linq;
using System.Collections.Generic;
public class Employee {
int ID;
string Name;
int Salary;
string Department;
public override string ToString() {
return ID + " " + Name + " " + Salary + " " + Department;
}
static void Main(string[] args) {
List <Employee> employees = new List <Employee> () {
new Employee {ID = 101, Name = "Amit ", Salary = 4000, Department = "ABC"},
new Employee {ID = 102, Name = "Gautam", Salary = 6000, Department = "XYZ"},
new Employee {ID = 103, Name = "Salman", Salary = 3000, Department = "ABC"},
new Employee {ID = 104, Name = "Ram ", Salary = 2000, Department = "XYZ"},
new Employee {ID = 105, Name = "Shyam ", Salary = 7000, Department = "ABC"},
new Employee {ID = 106, Name = "Kishor", Salary = 5000, Department = "XYZ"}
};
var result = employees.Where(emp => emp.Department == "ABC").OrderBy(sal => sal.Salary);
Console.WriteLine("ID Name Salary Department");
Console.WriteLine("============================");
foreach(Employee emp in result) {
Console.WriteLine(emp.ToString());
}
Console.WriteLine("============================");
}
}
Output
ID Name Salary Department
============================
103 Salman 3000 ABC
101 Amit 4000 ABC
105 Shyam 7000 ABC
============================
Press any key to continue . . .
Explanation
In the above program, we created a class Demo that contains the Main() method. In the Main() method we created a list of employees with fields ID, Name, Salary, and Department.
var result = employees.Where(emp=>emp.Department=="ABC").OrderBy(sal => sal.Salary);
In the above code, we sorted a list of employees based on salary using OrderBy() and checked the department using Where() method.
Console.WriteLine("ID Name Salary Department");
Console.WriteLine("============================");
foreach (Employee emp in result)
{
Console.WriteLine(emp.ToString());
}
Console.WriteLine("============================");
In the above code, we accessed the employee detail one by one and print on the console screen.
C# LINQ Programs »