C# datatable中重复数据去重

#region datatable去重 /// <summary>/// datatable去重/// </summary>/// <param name="dtSource">需要去重的datatable</param>/// <param name="columnNames">依据哪些列去重</param>/// <returns></returns>public static DataTable GetDistinctTable(DataTable dtSource, params string[] columnNames){DataTable distinctTable = dtSource.Clone();try{if (dtSource != null && dtSource.Rows.Count > 0){DataView dv = new DataView(dtSource);distinctTable = dv.ToTable(true, columnNames);}}catch (Exception ee){MessageBox.Show(ee.ToString());}return distinctTable;}/// <summary>/// datatable去重/// </summary>/// <param name="dtSource">需要去重的datatable</param>/// <returns></returns>public static DataTable GetDistinctTable(DataTable dtSource){DataTable distinctTable = null;try{if (dtSource != null && dtSource.Rows.Count > 0){string[] columnNames = GetTableColumnName(dtSource);DataView dv = new DataView(dtSource);distinctTable = dv.ToTable(true, columnNames);}}catch (Exception ee){MessageBox.Show(ee.ToString());}return distinctTable;}#endregion#region 获取表中所有列名public static string[] GetTableColumnName(DataTable dt){string cols = string.Empty;for (int i = 0; i < dt.Columns.Count; i++){cols += (dt.Columns[i].ColumnName + ",");}cols = cols.TrimEnd(‘,’);return cols.Split(‘,’);}#endregion

微软内部实现:

版权声明:作者:jiankunking 出处:本文版权归作者和CSDN共有,欢迎转载,,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

地球仍然转重,世间依旧善变,而我永远爱你。

C# datatable中重复数据去重

相关文章:

你感兴趣的文章:

标签云: