Copy Code code as follows:
static void Main (string[] args)
{
Employee Employee = new Employee ();
Set initial value
list<employee> employeelist = new list<employee> ();
Employeelist.add (New Employee () {EmpId = "001", EmpName = "Tony"});
Employeelist.add (New Employee () {EmpId = "002", EmpName = "Mack"});
Employeelist.add (New Employee () {EmpId = "003", EmpName = "Jon"});
Employeelist.add (New Employee () {EmpId = "004", EmpName = "Dawei"});
Employeelist.add (New Employee () {EmpId = "005", EmpName = "Jack"});
Employeelist.add (New Employee () {EmpId = "006", EmpName = "Abby"});
Employeelist.add (New Employee () {EmpId = "007", EmpName = "Carrie"});
Specifying the pre-placement sort element
list<employee> tosortlist = new list<employee> ();
Tosortlist.add (New Employee () {EmpId = "003", EmpName = "Jon"});
Tosortlist.add (New Employee () {EmpId = "005", EmpName = "Jack"});
Tosortlist.add (New Employee () {EmpId = "007", EmpName = "Carrie"});
Custom Sort Delegates
Employeelist.sort (employee x, employee y) => (Tosortlist.count (e => e.empid = = y.empid)-Tosortlist.count (E => E.empid = = x.empid));
}
public class Employee
{
public string EmpId
{
Get
Set
}
public string EmpName
{
Get
Set
}
}
After sorting the original list by 001,002,003, sorted by the elements of 003,005,007,001,002,004 .... The specified 003,005,007, arranged at the top of the list