【发布时间】:2011-12-27 03:49:21
【问题描述】:
数据库表有这样的字段:
fld_column1
fld_column1_item_1
fld_column1_item_2
fld_column1_item_3
fld_column2
fld_column2_item_1
fld_column2_item_2
fld_column2_item_3
fld_column3
fld_column3_item_1
fld_column3_item_2
fld_column3_item_3
我在控制器中这样做了:
ViewBag.Columns = from col in _db.tbl_columns
select col;
return View();
在视图中我这样做了:
<% foreach (tbl_columns col in (IEnumerable)ViewBag.Columns)
{ %>
<%= col.fld_column1_item1 %>
<%= col.fld_column2_item1 %>
<%= col.fld_column3_item1 %>
<% } %>
现在我的问题很简单:是否可以添加一个自动执行“column1”、“column2”等的变量?我该如何使用它?
【问题讨论】:
-
您能否更明确地说明这些列的实际内容(例如,它们的名称是什么?)这样我们可以更轻松地为您提供帮助。
-
你真的应该使用模型而不是 viewbag 来将集合带到视图中。
-
@GeorgeStocker 列名就像我在上面发布的一样,它们包含菜单名称。克里斯我不太确定我是否正确。你能贴一个很短的样本吗? :)
-
您将拥有一个视图模型,其中一个属性是 Collection。因此,您将返回 View(Model),并在视图中访问它 Model.Collection。然后你可以像这样旋转它:forarch(var item in Model.Collection)
标签: c# asp.net .net asp.net-mvc