溫馨提示×

C# DataTable數(shù)據(jù)排序如何實現(xiàn)

c#
小樊
81
2024-10-12 18:22:18
欄目: 編程語言

在C#中,要對DataTable進(jìn)行排序,可以使用DefaultView

using System;
using System.Data;

class Program
{
    static void Main()
    {
        // 創(chuàng)建一個DataTable
        DataTable dt = new DataTable();
        dt.Columns.Add("Name", typeof(string));
        dt.Columns.Add("Age", typeof(int));
        dt.Rows.Add("Alice", 30);
        dt.Rows.Add("Bob", 25);
        dt.Rows.Add("Charlie", 35);

        // 創(chuàng)建一個DefaultView對象,并關(guān)聯(lián)DataTable
        DefaultView dv = dt.DefaultView;

        // 對DataTable進(jìn)行排序,根據(jù)Name列升序排列
        dv.Sort = "Name ASC";

        // 獲取排序后的數(shù)據(jù)視圖
        DataTable sortedDt = dv.ToTable();

        // 輸出排序后的結(jié)果
        Console.WriteLine("Sorted DataTable:");
        foreach (DataRow row in sortedDt.Rows)
        {
            Console.WriteLine($"Name: {row["Name"]}, Age: {row["Age"]}");
        }
    }
}

在這個示例中,我們首先創(chuàng)建了一個包含姓名和年齡的DataTable。然后,我們創(chuàng)建了一個DefaultView對象,并將其與DataTable關(guān)聯(lián)。接下來,我們使用Sort屬性對DataTable進(jìn)行排序,根據(jù)"Name"列升序排列。最后,我們使用ToTable()方法將排序后的數(shù)據(jù)視圖轉(zhuǎn)換回DataTable,并輸出排序后的結(jié)果。

0