我正在使用ASP.Net MVC3和MySQL。
尝试找出beast方式从控制器返回sql结果,以使用webgrid帮助类查看和显示输出。
尝试跟着它不起作用。
控制器代码
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 :(得分:0)
WebGrid Helper构造函数采用类型为IEnumerable<object>
的参数。
确保您的DataTable可枚举。最简单的方法是使用AsEnumerable()
扩展方法。这是System.Data.DataTableExtensions
类。
您需要确保将ViewData对象强制转换为DataTable。然后,您可以在其上使用该扩展方法。
不确定此代码是否确实有效:
Dim grid As New WebGrid((DirectCast(ViewData("grid"), DataTable)).AsEnumerable())