比较两个DataTable内容是否相等,先是比数量,数量相等就比内容

来源:互联网 发布:ubuntu 卸载软件 编辑:程序博客网 时间:2024/05/21 19:45
    #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


原文地址:点击打开链接

0 0