比较两个DataTable内容是否相等,先是比数量,数量相等就比内容
2015-06-03 13:52
316 查看
#region 比较两个DataTable内容是否相等,先是比数量,数量相等就比内容 /// <summary> /// 比较两个DataTable内容是否相等,先是比数量,数量相等就比内容 /// </summary> /// <param name= "dtA "> </param> /// <param name= "dtB "> </param> public static bool CompareDataTable(DataTable dtA, DataTable dtB) { if (dtA.Rows.Count == dtB.Rows.Count) { if (CompareColumn(dtA.Columns, dtB.Columns)) { //比内容 for (int i = 0; i < dtA.Rows.Count; i++) { for (int j = 0; j < dtA.Columns.Count; j++) { if (!dtA.Rows[i][j].Equals(dtB.Rows[i][j])) { return false; } } } return true; } else { return false; } } else { return false; } } /// <summary> /// 比较两个字段集合是否名称,数据类型一致 /// </summary> /// <param name= "dcA "> </param> /// <param name= "dcB "> </param> /// <returns> </returns> private static bool CompareColumn(System.Data.DataColumnCollection dcA, System.Data.DataColumnCollection dcB) { if (dcA.Count == dcB.Count) { foreach (DataColumn dc in dcA) { //找相同字段名称 if (dcB.IndexOf(dc.ColumnName) > -1) { //测试数据类型 if (dc.DataType != dcB[dcB.IndexOf(dc.ColumnName)].DataType) { return false; } } else { return false; } } return true; } else { return false; } } #endregion
原文地址:点击打开链接
相关文章推荐
- Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
- myBatis 官方参考手册
- eclipse+gradle+gretty的web项目运行命令
- * failed to start daemon *
- iOS开发UI基础—30在UItableview中实现加载更多功能
- CGGeometry
- mysql存储过程循环语句简单例子
- Android Design Support Library最新组件
- SAT阅读:态度题型解答方法指导
- 说一说js中__proto__和prototype以及原型继承的那些事
- zookeeper原理(转)
- CVE-2015-3202 exploit demo
- java hashCode
- 在Golang中使用C语言代码实例
- 一个Java程序员应该掌握的10项技能
- ajax
- 黑马程序员---Java 装饰设计模式
- $.grep ,$.map,jquery筛选数组之grep、each、inArray、map的用法及遍历json对象
- 4.3-2
- iOS学习(5)—— UIScrollView