【发布时间】:2012-04-07 03:31:56
【问题描述】:
如何将数据集放入 viewbag 并在视图中显示结果?
我有一个来自模型的数据集,我将其写入视图包。我想使用 foreach 循环将数据行从视图中的视图包中取出。
我已经有一个变量进入视图,所以我无法正常传递数据集。每页我还将有许多其他数据集。所以我认为 viewbag 是解决这个问题的最佳方法。
型号
class modeldata
{
public dataset readrows(DataSet dataset)
{
//returns data from sql query.
}
}
控制器:
DataSet data = new DataSet();
modeldata getdata = new modeldata ();
ViewBag.Data = getdata.readrows(data);
return view("page1") //based on case statement.
//Already have a value going into view, so I need to use viewbag
查看:
@Model site.controllers.homecontroller;
foreach (Model.data row in ViewBag.Data.Rows)
{
@:row["id"] + " " + row["name"];
}
【问题讨论】:
-
为什么在 MVC 应用程序中使用数据集?如果您处理数据模型和 ORM,事情会变得更好。
-
带有 100 条 SQL 语句的旧代码。没有时间为这个项目转换。
-
那么,真正的问题是什么?
-
问题是:如何将数据集放入视图包并在视图中显示行。我上面有一个 foreach 示例。
-
foreach示例是否有效?如果没有,什么不起作用?假设Model.data类型与ViewBag.Data.Rows中的项目相同,您提供的代码看起来应该可以工作。我认为可能需要DataRow,但我已经有一段时间没有搞砸数据集了。
标签: c# html sql asp.net-mvc