怎样对DataTable进行重新排序?

hanbaojun 2004-09-11 12:12:38
返回一个排序后的DateaTable.
...全文
580 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jamzh 2004-09-11
  • 打赏
  • 举报
回复
学习!
saucer 2004-09-11
  • 打赏
  • 举报
回复
for sorting purpose, you should be using DataView

DataView dv = new DataView(YourDataTable);
dv.Sort = "SomeColumName DESC";
return dv;
hanbaojun 2004-09-11
  • 打赏
  • 举报
回复
谢谢两位高手相助,我用了The123(在我地盤這 伱就得聽我的) 的方法!
多谢!
The123 2004-09-11
  • 打赏
  • 举报
回复
DataTable dt2;
dt2 = dt1.Copy();
string strExpr;
string strSort;
strExpr = "id <> ''";
strSort = "id DESC";
DataRow[] foundRows = dt1.Select( strExpr, strSort);
dt2.Rows.Clear();
foreach(DataRow dr in aaaa)
{
dt2.ImportRow(dr);
}
MessageBox.Show(dt2.Rows[0][0].ToString()+"\n"+dt2.Rows[1][0].ToString());
然后用dt2替换你那个dt1
//晚上喝点酒,迷糊了,不好意思
The123 2004-09-11
  • 打赏
  • 举报
回复
for sorting purpose, you should be using DataView
象saucer领导学习。

要来硬的,试试这个
string strExpr;
string strSort;
strExpr = "id <> ''";
strSort = "id DESC";
DataRow[] foundRows = dt1.Select( strExpr, strSort);
DataRow[] aaaa= new DataRow[foundRows.GetLength(0)];
foundRows.CopyTo(aaaa,0);
dt2.Rows.Clear();
foreach(DataRow dr in aaaa)
{
dt2.ImportRow(dr);
}
MessageBox.Show(dt2.Rows[0][0].ToString()+"\n"+dt2.Rows[1][0].ToString());

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧