在C#中,要对DataTable进行排序,可以使用DefaultView
类
using System;
using System.Data;
class Program
{
static void Main()
{
// 创建一个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);
// 创建一个DefaultView对象,并关联DataTable
DefaultView dv = dt.DefaultView;
// 对DataTable进行排序,根据Name列升序排列
dv.Sort = "Name ASC";
// 获取排序后的数据视图
DataTable sortedDt = dv.ToTable();
// 输出排序后的结果
Console.WriteLine("Sorted DataTable:");
foreach (DataRow row in sortedDt.Rows)
{
Console.WriteLine($"Name: {row["Name"]}, Age: {row["Age"]}");
}
}
}
在这个示例中,我们首先创建了一个包含姓名和年龄的DataTable。然后,我们创建了一个DefaultView
对象,并将其与DataTable关联。接下来,我们使用Sort
属性对DataTable进行排序,根据"Name"列升序排列。最后,我们使用ToTable()
方法将排序后的数据视图转换回DataTable,并输出排序后的结果。