在C#中,OrderByDescending
是一个LINQ(Language Integrated Query)扩展方法,用于对集合中的元素按照指定的属性进行降序排序。以下是如何使用OrderByDescending
的示例:
首先,确保已经引入了System.Linq命名空间:
using System.Linq;
然后,假设我们有一个名为Person
的类,其中包含Name
和Age
属性:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
接下来,我们创建一个Person
对象的列表:
List<Person> people = new List<Person>
{
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 25 },
new Person { Name = "Charlie", Age = 35 },
};
现在,我们可以使用OrderByDescending
方法按照Age
属性对people
列表进行降序排序:
var sortedPeople = people.OrderByDescending(p => p.Age);
sortedPeople
现在包含按年龄降序排列的Person
对象。如果你想将排序后的结果转换为一个新的列表,可以使用ToList()
方法:
List<Person> sortedPeopleList = sortedPeople.ToList();
完整的示例代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main()
{
List<Person> people = new List<Person>
{
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 25 },
new Person { Name = "Charlie", Age = 35 },
};
var sortedPeople = people.OrderByDescending(p => p.Age);
foreach (var person in sortedPeople)
{
Console.WriteLine($"{person.Name}, {person.Age}");
}
}
}
输出结果:
Charlie, 35
Alice, 30
Bob, 25