将特定的数据集列复制到C#中的另一个数据集

本文关键字:数据集 另一个 复制 | 更新日期: 2023-09-27 18:00:32

我想在C#中将某些列从一个数据集复制到另一个数据集中方面得到一些帮助。列的映射存储在xml文件中。

假设我有一个包含列的源数据集-

calldate, 
percent, 
value

和带有列的目的地数据集-

name,
amount

映射xml文件有、个来自源数据集的列和个目标列名。Exclude属性有助于确定是否要复制列。XML:

<data>
  <column name="calldate" destination="name" exclude="false" />
  <column name="percent" destination="" exclude="true" />
  <column name="value" destination="amount" exclude="false" />
</data>

如何将calldatevalue列从源数据集分别复制到目标数据集的nameamount列?注意:数据类型将是相同的-字符串和双精度。目前我并不关心xml部分。一旦我弄清楚如何将特定列复制到目标数据集中的相应列,我就会处理好这一问题。

将特定的数据集列复制到C#中的另一个数据集

例如,如果dt是您正在处理的表,则

var newTable = new DataTable();
newTable.Columns.Add("name");
newTable.Columns.Add("amount");
foreach (var row as DataRow in dt.Rows) {
    newTable.Rows.Add(new object[] { row["calldate"], row["value"} });
}