2010-09-01 99 views
2

我有一個datable和這樣的我已經從datable的一些主要的基礎上搜索datarow現在我想添加搜索到另一個數據表的行我怎麼能實現這一點請讓我知道asp.net從一個數據表複製行到另一個

DataTable findRows = (DataTable)ViewState["dt"]; 
List<int> selectedList=(List<int>)ViewState["selectedList"]; 
DataTable temp = new DataTable(); 

foreach (int id in selectedList) 
{ 
    DataRow dr=findRows.Rows.Find(id); 

} 

現在我想要它添加到數據表temp我怎麼能實現這一目標?

回答

7

首先,在創建temp時,不要只是實例它作爲一個新的DataTable而是呼籲0​​上findrows創建一個結構相同DataTable

其次,在第二個DataTable上使用.ImportRow(),並將其從第一個要複製的DataTable傳遞給它。這應該在第二個表中創建一個全新的行,其值與第一個表中的行相同。

+0

你會請代碼一下...我沒有得到你所說的 – NoviceToDotNet 2010-09-01 19:58:12

+1

DataTable findRows =(DataTable)ViewState [「dt」]; List selectedList =(List )ViewState [「selectedList」]; DataTable temp = findRows.Clone(); foreach(在selectedList中的int id) DataRow dr = findRows.Rows.Find(id); temp.ImportRow(dr); } – NoviceToDotNet 2010-09-01 20:01:19

+0

這看起來是對的,雅。對不起,我一直在過去一小時或更長時間(接孩子等)通勤,所以我直到現在纔看到這些評論:) – David 2010-09-01 21:40:02

相關問題