温馨提示×

c# orderbydescending怎样使用

c#
小樊
81
2024-11-23 07:32:14
栏目: 编程语言

在C#中,OrderByDescending是一个LINQ(Language Integrated Query)扩展方法,用于对集合中的元素按照指定的属性进行降序排序。以下是如何使用OrderByDescending的示例:

首先,确保已经引入了System.Linq命名空间:

using System.Linq;

然后,假设我们有一个名为Person的类,其中包含NameAge属性:

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

0