C#操作DataTable方法实现过滤、取前N条数据及获取指定列数据列表的方法

前端技术 2023/09/08 C#

本文实例讲述了C#操作DataTable方法实现过滤、取前N条数据及获取指定列数据列表的方法。分享给大家供大家参考。具体分析如下:

#region DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回
/// <summary>
/// DataTable筛选,排序返回符合条件行组成的新DataTable
///或直接用DefaultView按条件返回
/// eg:SortExprDataTable(dt,\"Sex=\'男\'\",\"Time Desc\",1)
/// </summary>
/// <param name=\"dt\">传入的DataTable</param>
/// <param name=\"strExpr\">筛选条件</param>
/// <param name=\"strSort\">排序条件</param>
/// <param name=\"mode\">1,直接用DefaultView按条件返回,效率较高;
/// 2,DataTable筛选,排序返回符合条件行组成的新DataTable</param>
public static DataTable SortDataTable(DataTable dt, string strExpr,string strSort,int mode)
{
 switch (mode)
 {
  case 1:
   //方法一 直接用DefaultView按条件返回
   dt.DefaultView.RowFilter = strExpr;
   dt.DefaultView.Sort = strSort;
   return dt;
  case 2:
   //方法二 DataTable筛选,
   //排序返回符合条件行组成的新DataTable
   DataTable dt1 = new DataTable();
   DataRow[] GetRows = dt.Select(strExpr, strSort);
   //复制DataTable dt结构不包含数据
   dt1 = dt.Clone();
   foreach (DataRow row in GetRows)
   {
   dt1.Rows.Add(row.ItemArray);
   }
   return dt1;
  default:
   return dt;
 }
}
#endregion

希望本文所述对大家的C#程序设计有所帮助。

本文地址:https://www.stayed.cn/item/20590

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。