将特定DataSet列复制到C#中的另一个DataSet

时间:2011-06-24 20:30:57

标签: c# datatable dataset

我希望在将一些数据集中的某些列复制到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部分。一旦我弄清楚如何将特定列复制到目标数据集中的相应列,我将会处理这个问题。

1 个答案:

答案 0 :(得分:1)

例如,如果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"} });
}