获取对固定列不重复的新DataTable
2014-01-08 09:45
253 查看
#region 获取对固定列不重复的新DataTable /// <summary> /// 获取对固定列不重复的新DataTable /// </summary> /// <param name="dt">含有重复数据的DataTable</param> /// <param name="colName">需要验证重复的列名</param> /// <returns>新的DataTable,colName列不重复,表格式保持不变</returns> private DataTable GetDistinctTable(DataTable dt, string colName) { if (dt.Rows.Count == 0 || dt.Rows.Count == 1) { WriteFile("GetDistinctTable传入dt的行数小于等于1" + "\r\n", logName, out outMessage); return dt; } DataView dv = dt.DefaultView; //dv过滤dv中的重复列名 DataTable dtCardNo = dv.ToTable(true, colName); DataTable Pointdt = new DataTable(); //ToTable()根据现有 DataView 中的行,创建并返回一个新的 DataTable。 //输出表与输入表包含相同的列 Pointdt = dv.ToTable(); Pointdt.Clear(); for (int i = 0; i < dtCardNo.Rows.Count; i++) { try { //dr取的是Select返回的DataRow[]中的第一条数据 //如果dtCardNo.Rows[i][0].ToString()中没有值会报数组超出索引界限的错误 if (!string.IsNullOrEmpty(dtCardNo.Rows[i][0].ToString())) { DataRow dr = dt.Select(colName + "='" + dtCardNo.Rows[i][0].ToString() + "'")[0]; //DataRow.ItemArray通过一个数组来获取或设置此行的所有值 Pointdt.Rows.Add(dr.ItemArray); } } catch (Exception ee) { //可以将错误写入日志文件 } } return Pointdt; } #endregion
linqs实现
http://blog.csdn.net/jiankunking/article/details/42749663
相关文章推荐
- 获取对固定列不重复的新DataTable
- 获取对固定列不重复的新DataTable
- ADO.NET 从DataTable中获取某列含有的不重复值的几种方式
- DataSet&DataTable如何绑定下拉列表控件获取不重复的值,如何添加一列自定义文字,并在下拉列表控件中显示自定义文字[winform学习实例]
- asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)
- DataTable相关操作,筛选,取前N条数据,去重复行,获取指定列数据
- 从已获取数据的DataTable中提取固定列
- DataTable相关操作,筛选,取前N条数据,去重复行,获取指定列数据
- ADO.NET 从DataTable中获取某列含有的不重复值的几种方式
- C# DataTable中根据某Column值(不重复)获取该值所在行
- DataTable相关操作,筛选,取前N条数据,去重复行,获取指定列数据
- DataTable相关操作,筛选,取前N条数据,去重复行,获取指定列数据
- DataTable相关操作,筛选,取前N条数据,去重复行,获取指定列数据
- asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)
- 设置GridView列名中文显示 及DataTable根据主键获取行记录
- ios 开发中获取字符串中重复的字符的range
- PHPCMS使用get标签获取文章列表过滤重复标题并实现分页
- iOS - 固定宽度和字号,获取Label的frame;固定高度和字号,获取Label的frame
- C#获取变更过的DataTable记录的实现方法
- Java 获取两个整型数组之间的重复元素集合