我想将{dat}的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;
}
答案 0 :(得分: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];
应该工作。
答案 1 :(得分: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);