我有一个DataTable让人们接触到不同的列更改事件,等等......
我需要偶尔清理表格,并用不同的数据表填充新数据。
我只是使用了targetTable = sourceTable.Copy(),但是然后我上面的人放松了他们所连接的事件。
我想我可以为DataTables编写一个扩展方法来执行此操作,因此如果情况再次出现,我可以重复使用它。
我被挂断的部分是,如果我以通用的方式进行,那么我想将模式从源表完全转移到目标表。
有没有简单的方法呢? 我只是在比较列,以确保名称/类型匹配,但后来我认为如果我也可以转移模式,我可以使它更健壮。
看起来有一种方法可以通过使用ReadXMLSchema和WriteXMLSchema来传输模式,但我想知道它们是不是一种eaiser方式。
答案 0 :(得分:1)
http://msdn.microsoft.com/en-us/library/system.data.datatable.merge.aspx 传输架构和所有数据,如果需要,保留更改或行状态。
DataTable.Merge(dt2, true, MissingSchemaAction.Add);
答案 1 :(得分:0)
你试过吗
YourTable.Clear() - 只是删除记录,但没有任何其他定义 YourTable.Merge(TheOtherTable) - 将记录从一个合并到另一个。