欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【转载】C#的Merge方法合并两个DataTable对象的数据

程序员文章站 2023-08-31 13:35:04
在C#中的Datatable类中,可以使用DataTable类的Merge方法对两个相同结构的DataTable对象进行求并集运算,将两个DataTable对象的数据行合并到其中一个DataTable变量中,或者说往其中一个DataTable对象中写入另一个DataTable对象的所有数据行。下列例 ......

在c#中的datatable类中,可以使用datatable类的merge方法对两个相同结构的datatable对象进行求并集运算,将两个datatable对象的数据行合并到其中一个datatable变量中,或者说往其中一个datatable对象中写入另一个datatable对象的所有数据行。下列例子中使用到datatable.clone方法,datatable.clone方法用于赋值datatable的结构信息,包括所有 datatable 架构和约束。

merge方法的签名为:void merge(datatable table);参数table代表被合并的datatable对象变量。

举例如下,将newdt1对象的所有数据合并到datadt对象中,具体代码如下:

          datatable datadt = new datatable();

            datadt.columns.add(new datacolumn() { columnname = "name" });
            datadt.columns.add(new datacolumn() { columnname = "id" });
            datadt.columns.add(new datacolumn() { columnname = "memo", datatype=typeof(string) });

            datarow newrow = datadt.newrow();
            newrow["name"] = "李四";
            newrow["id"] = 22;
            newrow["memo"] = "后续新增";
            datadt.rows.add(newrow);  

            
            var newdt1 = datadt.clone();//通过clone方法快速复制datadt的结构信息

            datarow inserdatarow = newdt1.newrow();//根据newdt1的结构创建一个行对象datarow
            inserdatarow["name"] = "王五";
            inserdatarow["id"] = 23;
            inserdatarow["memo"] = "第一行";
            newdt1.rows.insertat(inserdatarow, 0);//往newdt1对象中写入一行数据

            datadt.merge(newdt1);//将newdt1表格中的数据合并到datadt表格中。

上述程序代码执行完毕之后,我们可以看到datadt中存在两条数据,一条为name="张三"的,另一个为name="李四"的,即成功将newdt1表格中的数据合并到datadt表格中。

 

更多的datatable的操作文章可以参考:

(1)c#的datatable类clone及copy方法的区别

(2)c#通过clone方法快速创建相同架构的datatable

(3)c#通过insertat方法在datatable特定位置插入一条数据

(4)c#通过copy方法快速复制datatable对象

(5)c#通过indexof方法获取某一列在datatable中的索引位置

(6)c#通过contains方法判断datatable中是否存在某个列名

(7)c#手动往datatable中末尾新增一行数据

(8)c#通过遍历datatable的列获取所有列名

(9)c#通过remove方法移除datatable中的某一列数据

(10)c#如何往datatable中新增一个数据列

(11)c#通过rows.count属性获取总行数

(12)c#中遍历datatable中的数据行

(13)c#中手动创建一个datatable并写入数据

 

备注:原文转载自博主个人站it技术小趣屋,原文链接为c#的merge方法合并两个datatable对象的数据_it技术小趣屋

博主个人技术交流群:960640092,博主微信公众号如下:

【转载】C#的Merge方法合并两个DataTable对象的数据