當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C# Linq ThenByDescending()用法及代碼示例


這裏我們將使用Linq OrderByDescending() 和List 的ThenByDescending() 方法。這裏 OrderBy() 方法用於在第一級對員工詳細信息進行排序,然後使用 ThenByDescending() 方法在第二級對員工信息進行排序。

注意:OrderByDescending() 和 ThenByDescending() 方法用於按降序排序。

程序:

下麵給出了演示 Linq ThenByDescending() 方法的源代碼。給定的程序在 Microsoft Visual Studio 上編譯並成功執行。

//C# program to demonstrate the Linq ThenByDescending() method.

using System;
using System.Linq;
using System.Collections.Generic;

public class Employee
{
    int ID;
    string Name;
    int Salary;
    string Department;

    public override string ToString()
    {
        return ID + " " + Name + " " + Salary + " " + Department;
    }

    static void Main(string[] args)
    {
        List<Employee> employees = new List<Employee>()
        {
             new Employee {ID=101,   Name="Amit  "    , Salary=4000,Department="ABC"},
             new Employee {ID=102,   Name="Amit  "    , Salary=3000,Department="XYZ"},
             new Employee {ID=103,   Name="Salman"    , Salary=3000,Department="ABC"},
             new Employee {ID=104,   Name="Ram   "    , Salary=2000,Department="XYZ"},
             new Employee {ID=105,   Name="Shyam "    , Salary=7000,Department="ABC"},
             new Employee {ID=106,   Name="Kishor"    , Salary=5000,Department="XYZ"},
        };


        var result = employees.OrderByDescending(name => name.Name).ThenByDescending(sal=>sal.Salary);


        Console.WriteLine("ID  Name  Salary  Department");
        Console.WriteLine("============================");
        foreach (Employee emp in result)
        {
            Console.WriteLine(emp.ToString());
        }
        Console.WriteLine("============================");
    }
}

輸出:

ID  Name  Salary  Department
============================
105 Shyam  7000 ABC
103 Salman 3000 ABC
104 Ram    2000 XYZ
106 Kishor 5000 XYZ
101 Amit   4000 ABC
102 Amit   3000 XYZ
============================
Press any key to continue . . .

說明:

在上麵的程序中,我們創建了一個Employee類,其中包含數據成員ID、Name、Salary和Department,Employee類還包含靜態方法Main()。 Main() 方法是程序的入口點。

在 Main() 方法中,我們使用 List 集合創建了員工列表。然後我們使用 OrderByDescending() 和 ThenByDescending() 方法按降序對員工列表進行排序。 OrderByDescending() 方法用於第一級排序,ThenByDescending() 用於不同字段的下一級排序。




相關用法


注:本文由純淨天空篩選整理自 C# program to demonstrate the example of Linq ThenByDescending() method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。