4

我想将数据表复制itemarray[4]itemarray[6]该数据表中。我使用了这段代码,但没有看到任何变化:

foreach (DataRow dr_row in dt_table.Rows)
{
    foreach (var field_value in dr_row.ItemArray)
    {
        object cell_data = field_value;
        if (dr_row.ItemArray[6].ToString() == "")
        {
            dr_row.ItemArray[6] = dr_row.ItemArray[4];
        }
        original_data += cell_data.ToString();
    }
    original_data += Environment.NewLine;
}
4

2 回答 2

2

首先永远不要这样做:

dr_row.ItemArray[6].ToString() == ""

将其更改为:

dr_row.ItemArray[6].ToString() == String.Empty

或者:

 String.IsNullOrEmpty(dr_row.ItemArray[6].ToString())

但是,这只是一个好习惯。现在,对于您面临的问题。

所做的Itemarray是,它从行创建一个新数组,因此如果更改数组,则不会更改行。

做这个:

dr_row[6] = dr_row[4];

应该管用。

于 2012-08-31T03:28:55.530 回答
1

尝试这个,

 foreach (DataRow dr_row in dt_table.Rows)
  {
     dr_row[6] = dr_row[4];
  }

并用于 System.Text.StringBuilder附加数据。

 System.Text.StringBuilder sb = new StringBuilder();
 sb.Append(value1);
于 2012-08-31T03:23:41.807 回答