2011-05-04 51 views
0

爲了測試我想擴展我的結果集。我有一個DataTable dt,有7個左右的結果。我想這樣做:C#datatable,重複數據

dt.Rows.Add(dt);幾次,只是爲了使數據集更大。

我也試過dt.Rows.Add(dt.Rows[0]);

的第一次給了一個錯誤有關的類型,第二個說行已經存在。

+0

你真的添加正確的類型呢? – 2011-05-04 13:39:29

回答

3

你需要做這樣的事情有什麼下文。基本上使用現有行的值生成一個新行。

DataTable dt = new DataTable(); 
DataRow dr = dt.Rows[0]; 
dt.Rows.Add(dr.ItemArray); 
+0

這正是我的答案。 @James點擊了代碼失敗的原因,但沒有提供解決方案,因爲您已爲您+1。 – Yuck 2011-05-04 13:44:20

0

第一項失敗,因爲函數需要參數DataRow

第二項失敗,因爲您試圖從表中添加一個項目,所以它本來就存在。

嘗試:

DataTable dt; 
DataRow dr = dt.NewRow(); 
dr["field"] = "Some Value"; 
dt.Rows.Add(dr); 

退房的DataRow Class article on MSDN

2

您需要將值複製到新行:

DataRow row = dt.NewRow(); 
    row.ItemArray = dt.Rows[0].ItemArray; 
    dt.Rows.Add(row);