Ngôn ngữ LINQ - OrderByDescending
Toán tử sắp xếp OrderByDescending trong LINQ
Phương thức mở rộng OrderByDescending sắp xếp danh sách theo thứ tự giảm dần.
OrderByDescending chỉ hợp lệ với cú pháp phương thức. Nó không hợp lệ trong cú pháp truy vấn vì cú pháp truy vấn sử dụng toán tử orderby
và các từ khóa ascending / descending để sắp xếp tăng dần / giảm dần như được trình bày ở trên.
Ví dụ dưới đây sắp xếp danh sách giảm dần theo tên:
// Student collection
IList<Student> studentList = new List<Student>()
{
new Student() { StudentID = 1, StudentName = "John", Age = 18 },
new Student() { StudentID = 2, StudentName = "Steve", Age = 15 },
new Student() { StudentID = 3, StudentName = "Bill", Age = 25 },
new Student() { StudentID = 4, StudentName = "Ram" , Age = 20 },
new Student() { StudentID = 5, StudentName = "Ron" , Age = 19 }
};
//Sorts the studentList collection in descending order
var studentsInDescOrder = studentList.OrderByDescending(s => s.StudentName);
foreach (var std in studentsInDescOrder)
{
Console.WriteLine(std.StudentName);
}
Đây là kết quả khi biên dịch và thực thi chương trình:
Steve
Ron
Ram
John
Bill
Những điểm cần nhớ về toán tử OrderBy:
- LINQ có năm toán tử sắp xếp: OrderBy, OrderByDescending, ThenBy, ThenByDescending và Reverse.
- Cú pháp truy vấn LINQ chỉ hỗ trợ mệnh đề
orderby
và có thể sắp xếp tăng dần hoặc giảm dần bằng cách sử dụng từ khóa 'ascending' và 'descending'. - Cú pháp truy vấn LINQ hỗ trợ sắp xếp theo nhiều trường được phân tách bằng dấu phẩy và từ khóa sắp xếp 'ascending' hoặc 'descending'.