【转载】C#的DataTable类Clone及Copy方法的区别
程序员文章站
2022-06-04 12:05:39
在C#中的Datatable类中,Clone方法和Copy方法都可以用来复制当前的DataTable对象,但DataTable类中的Clone方法和Copy方法还是有区别的,Clone方法只复制结构信息,包括所有 DataTable 架构和约束,但Copy方法除了复制结构信息之外,还复制DataTa ......
在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,博主微信公众号如下:
上一篇: 银耳种类,好的银耳怎么挑选
下一篇: js批量上传界面的实现