古い DataTable A から生成された DataRow dr があります。それを新しい DataTable B に追加したいと思います。A は B と同じ構造を持っています。for() を使用して新しい DataRow を複製します。それを達成するための良い方法を考えています。
if (hour != this.currentHour)
{
ds.Tables.Add(this.currentDataTable);
this.currentHour = hour;
this.currentDataTable = InitMeasurementTable();
this.currentDataTable.TableName = string.Format("Measurement_{0}", hour);
DataRow drr = this.currentDataTable.NewRow();
for (int i = 0; i < this.currentDataTable.Columns.Count; ++i)
drr[i] = dr[i]; // clone part
this.currentDataTable.Rows.Add(drr);
}