当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.ent下合并两个结构相同的DataTable

ASP.NET
VS 2008和.NET 3.5 Beta2新特性介绍
VS 2008和.NET 3.5 Beta2常见问题的解决方案
Asp.net 备份和还原SQL Server及压缩Access数据库
Asp.Net中动态页面转静态页面
ASP.NET缓存:方法分析和实践示例
ASP.NET Forms验证(自定义、角色提供程序)
ASP.NET 2.0当中的Call Back机制
ASP.NET中MD5和SHA1加密的几种方法
在ASP.NET Atlas中调用Web Service
Cast的妙用:泛用LINQ 語句
ASP.NET将物件序列化成Binary储存至DB or File
使用Ajax后,原来导出功能失败的解决方法
装箱、转型、方法调用他们究竟有什么区别?
ASP.NET MVC :实现我们自己的视图引擎
如何构造一个C#语言的爬虫程序
Asp.net Mvc Framework可以在Controller中使用的Url.Action方法
校内网API的.net版本XiaoNei.Net 1.0(非官方)
使用ExtJS GridPanel从Web Service 获取、绑定和显示数据
从UI->DB一条龙到代码生成到EOS,谈谈快速开发
ASP.Net安装简明手册

ASP.NET 中的 asp.ent下合并两个结构相同的DataTable


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 144 ::
收藏到网摘: n/a

今天遇到了一个情况,就是从一张数据表中读取几个符合条件1的客户的信息,然后再读取几个符合条件2的客户的信息,最后显示出来.因为前后两次数据的客户信息的结构是完全相同的,所以干脆合并成一个DataTable再赋值给GridView好了. 写了个函数.
复制代码 代码如下:

/// <summary>
/// 合并两个相同的DataTable,返回合并后的结果
/// </summary>
/// <param name="dt1"></param>
/// <param name="dt2"></param>
/// <returns></returns>
public DataTable CombineTheSameDatatable(DataTable dt1, DataTable dt2)
{
if (dt1.Rows.Count == 0 && dt2.Rows.Count == 0)
{
return new DataTable();
}
if (dt1.Rows.Count == 0)
{
return dt2;
}
if (dt2.Rows.Count == 0)
{
return dt1;
}
DataSet ds = new DataSet();
ds.Tables.Add(dt1.Copy());
ds.Merge(dt2.Copy());
return ds.Tables[0];
}

由于对C#的理解有限,所以不明白为什么用dt1==null不能正确判断空表,所以用了数行的方法.还望高人能指点一二.