繁体   English   中英

将一个数据表复制到另一个

[英]Copy one datatable into another

我有第一个数据表:

dtOld

列:

CE

第二个数据表:

dtNew:

ABCDEF

我只想将stOld数据复制到带有指定列的dtNew中。

即:

C col的dtOld值应该在DtNew ..和E Col的D col值中复制到F col

我尝试了一些复杂的逻辑,但它没有用。

有没有办法解决这个问题。

我试过:

DataTable dtOld = new DataTable();
                        dtOld = ds.Tables[0];
                        string[] columns = { "c", "E" };
                        string[] columns2 = { "D", "F " };
                        foreach (DataRow sourcerow in dtOld.Rows)
                        {
                            DataRow destRow = dtNew.NewRow();
                            int cntm = 0;
                            foreach (string colname in columns)
                            {
                                destRow[columns2[cntm]] = sourcerow[colname];
                                cntm++; 
                            }
                            dtNew.Rows.Add(destRow);
                        }

请帮我。

它只是从一组固定的列到另一组的简单副本,那么为什么要复杂化呢?

foreach (DataRow sourcerow in dtOld.Rows)
{
    DataRow destRow = dtNew.NewRow();
    destRow["D"] = sourcerow["c"];
    destRow["F"] = sourcerow["E"];
    dtNew.Rows.Add(destRow);
}
    foreach (DataRow row in dtOld.Rows)
        dtNew.LoadDataRow(new[]
                                  {
                                      null, // default value
                                      null,
                                      null,
                                      row["C"],
                                      null,
                                      row["E"]
                                  }, LoadOption.Upsert);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM