2010-06-13 95 views
0

如何從Linq Query或List中提取DataTable或DataSet。 例如,我有這樣的linq查詢如何從Linq Query或List中提取Datatable或DataSet

MyDBpDataContext dcSp = new MyDBpDataContext(); dcSp.myProgrammSP()。ToList();

我寫了一個Sp作爲結果發送一個表,我有代碼已經在使用DataTable所以我想在DataTable中轉換這個結果。

回答

2

結果在任何時候都不以DataTable的形式存在,所以如果您希望它作爲DataTable,則必須創建一個並將數據複製到其中。

例子:

DataTable table = new DataTable("Items"); 
table.Columns.Add(new DataColumn("Id", typeof(Int32))); 
table.Columns.Add(new DataColumn("Name", typeof(String))); 
foreach (Item item in items) { 
    DataRow row = table.NewRow(); 
    row["Id"] = item.Id; 
    row["Name"] = item.Name; 
    table.Rows.Add(row); 
} 
+0

所以你的意思是,我們可以將結果從名單通過DataAdapter的 – Azhar 2010-06-13 13:41:55

+0

@Azhar轉換成數據表:我查了一下投入使用DataAdapter的,但就我看這不是真正實用因爲您必須實現一個讀取數據並將其提供給適配器的圖層。我添加了一個關於如何直接創建DataTable的例子,這很容易。 – Guffa 2010-06-13 13:44:53