首页 > Windows开发 > 详细

【转载】C#的DataTable类Clone及Copy方法的区别

时间:2019-07-25 22:00:00      阅读:96      评论:0      收藏:0      [点我收藏+]

在C#中的Datatable类中,Clone方法和Copy方法都可以用来复制当前的DataTable对象,但DataTable类中的Clone方法和Copy方法还是有区别的,Clone方法只复制结构信息,包括所有 DataTable 架构和约束,但Copy方法除了复制结构信息之外,还复制DataTable的表格行数据信息。

DataTable.Clone 方法:克隆 DataTable 的结构,包括所有 DataTable 架构和约束。

DataTable.Copy 方法:复制该 DataTable 的结构和数据。

针对于DataTable类中的Copy方法和Clone方法,举例如下:

            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);  

            DataRow inserDataRow = dataDt.NewRow();
            inserDataRow["Name"] = "王五";
            inserDataRow["Id"] = 23;
            inserDataRow["Memo"] = "第一行";
            dataDt.Rows.InsertAt(inserDataRow, 0);


            var newDt1 = dataDt.Clone();
            var newDt2 = dataDt.Copy();

从程序运行结果来看,newDt1和newDt2的结构信息一致无差别,但newDt1的数据行为0,而newDt2的数据行为2,并且newDt2中的数据与dataDt表格数据一致。

 

备注:原文转载自博主个人站IT技术小趣屋,原文链接为C#的DataTable类Clone及Copy方法的区别_IT技术小趣屋

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

技术分享图片

【转载】C#的DataTable类Clone及Copy方法的区别

原文:https://www.cnblogs.com/xu-yi/p/11246477.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!