gpt4 book ai didi

c# - 排序数据表 C#

转载 作者:搜寻专家 更新时间:2023-10-30 19:56:01 25 4
gpt4 key购买 nike

我有一个数据表,其中包含相应的 姓名和分数。我想根据分数降序排序。

这是DB.cs中的代码:

public class DB
{
public DataTable GetData()
{
string spName = "GetTime";
Connection.Open();

SqlCommand command = new SqlCommand(spName, Connection);
command.CommandType = CommandType.StoredProcedure;

SqlDataReader reader = command.ExecuteReader();
DataTable dt = new DataTable();
dt.Columns.Add("Name");
dt.Columns.Add("Time");

while (reader.Read())
{
DataRow dr = dt.NewRow();
dr["Name"] = Convert.ToString(reader["name"]);
dr["Time"] = Convert.ToInt32(reader["timeScore"]);
dt.Rows.Add(dr);
}
Connection.Close();
return dt;
}
}

这是在 Form3.cs 上

public partial class Form3 : Form
{
private Form2 form2;
public Form3()
{
InitializeComponent();
loadData();
}

public void loadData()
{
form2 = new Form2();
DataTable dt2 = form2.db.GetData();
dgvScore.DataSource = dt2;
}
}

我应该怎么做才能像在 Java 中一样在没有任何 comparer 的情况下对其进行排序?我只想要一个简单的算法答案。感谢您的宝贵帮助!

最佳答案

你不需要遍历阅读器:

SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
DataTable dt = new DataTable();
dt.Load(dr);

然后你可以简单地对defaultView进行排序:

dt.DefaultView.Sort = "timeScore desc";

关于c# - 排序数据表 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17642200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com