• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > 比较2个datatable内容是否相同的方法

比较2个datatable内容是否相同的方法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了datatable方法,c#比较两个datatable,datatable,jquery datatable,c datatable等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

DataTable可以通过RowStatus来判断状态是否发生了改变。但是有些时候我们希望在行状态即使为Modified的情况下也不要提示内容发生了变化,这个时候我们可能就需要自己写方法去判断了。比如有一个DataTable中有选择列的状态发生了变化,但是我在保存时不希望系统判断DataTable的行状态发生了变化而将数据重新更新到数据库中。
 这样我们可以将需要判断DataTable中那些列变化时才需要保存了。以下是比较2个DataTable的内容是否相同的方法:

 

///   比较两个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;
    }
}
</div>

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#操作DataTable方法实现过滤、取前N条数据及获取指定列数据列表的方法
  • datatable去掉重复行的方法
  • 比较2个datatable内容是否相同的方法

相关文章

  • 2017-05-28DevExpress获取TreeList可视区域节点集合的实现方法
  • 2017-05-28详解C#多线程之线程同步
  • 2017-05-28C# httpwebrequest访问HTTPS错误处理方法
  • 2017-05-28C#实现在线更新软件
  • 2017-05-28C#编程实现取整和取余的方法
  • 2017-05-28C#计算程序执行过程花费时间的方法
  • 2017-05-28C#委托delegate实例解析
  • 2017-05-28完成OSS.Http底层HttpClient重构封装 支持标准库
  • 2017-05-28c#测试反射性能示例
  • 2017-05-28C#利用GDI+绘制旋转文字等效果实例

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • .NET连接MongoDB数据库实例教程
    • C#利用正则判断输入是否为纯数字、容器类
    • C#判断给定IP地址是否在指定范围内的方法
    • C#采用Winform实现类似Android的Listener
    • C#实现操作windows系统服务(service)的方法
    • winform实现拖动文件到窗体上的方法
    • 浅谈C#中正则表达式的使用
    • 当用户退出点击浏览器后退仍可回到原来页面的解决方案
    • C#使用DeflateStream解压缩数据文件的方法
    • C#文件流进行压缩和解压缩的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有