在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