我注意到,当将一个数据值分配给其他数据表时,如果我更改了新的数据表值,则其他数据表(旧)值也会更改。我是初学者,我明白为什么任何人都可以帮我解决。 例如:
DataTable dt = new DataTable();
dt = dtRpt;//dtrpt contains some value
dt.Columns.Remove("KidoTotal");
dt.Columns.Remove("Total");
dt.Columns.Remove("intSubjectID");
答案 0 :(得分:2)
尝试以上方法:
DataTable dt = new DataTable();
dt = dtRpt.Clone();//dtrpt contains some value
dt.Columns.Remove("KidoTotal");
dt.Columns.Remove("Total");
dt.Columns.Remove("intSubjectID");
答案 1 :(得分:2)
DataTable
是reference type,因此,如果您为变量指定了另一个DataTable
引用,则两者实际上都是同一个表。
您需要将数据复制到具有相同架构的新表,您可以使用DataTable.Copy
:
DataTable dt = dtRpt.Copy(); // use Clone if you want to create an empty table without data with the same schema