2011-02-03 127 views
1

我正在使用ASP.Net MVC3與MySQL。ASP.Net MVC3在webgrid中顯示sql輸出

試圖找出從控制器返回sql結果使用webgrid幫助類來查看和顯示輸出的野獸方式。

嘗試跟着它不工作。

的Controler代碼

data = New DataTable 
da = New MySqlDataAdapter("SELECT * FROM " + tables.SelectedItem.ToString(), conn) 
cb = New MySqlCommandBuilder(da) 
da.Fill(data) 
ViewData("grid") = data 

查看代碼

@Code 
    Dim grid As New WebGrid(ViewData("grid")) 
End Code 
@grid.GetHtml() 

請糾正我,我在做什麼錯在這裏。

由於 SR

+0

這是什麼行`dataGrid.DataSource = data`的意圖是什麼? – 2011-02-03 22:50:11

+0

這是錯誤的,讓我刪除它。 – sfgroups 2011-02-03 23:15:27

回答

0

的的WebGrid助手構造函數採用IEnumerable<object>類型的參數。

確保您的DataTable是可枚舉的。最簡單的方法是使用AsEnumerable()擴展方法。這是在System.Data.DataTableExtensions類。

您需要確保您的ViewData對象被轉換爲DataTable。然後您可以在其上使用該擴展方法。

不能確定這是否代碼實際工作:

Dim grid As New WebGrid((DirectCast(ViewData("grid"), DataTable)).AsEnumerable())