zoukankan      html  css  js  c++  java
  • 比较两个DataTable是否相等

            ///   <summary>
            ///   比较两个DataTable内容是否相等,先是比数量,数量相等就比内容
            ///   </summary>
            ///   <param   name= "dtA "> </param>
            ///   <param   name= "dtB "> </param>
            private 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 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;
                }
            }

  • 相关阅读:
    android高级页面效果集锦
    2018年Android的保活方案效果统计
    程序员如何预估自己的项目开发时间?
    Google开发者大会:你不得不知的Tensorflow小技巧
    练就Java24章真经—你所不知道的工厂方法
    一个完整Java Web项目背后的密码
    怎么捕获和记录SQL Server中发生的死锁
    使用跟踪标志位分析死锁
    通过SQL Server Profiler来监视分析死锁
    SQL Server中的死锁
  • 原文地址:https://www.cnblogs.com/shenbing/p/6823403.html
Copyright © 2011-2022 走看看