更改解决方案:我正在尝试显示数据的html表..在我的控制器中,我将对象作为null启动,然后将对象作为参考传递,以根据DB中的信息更新对象,如此“用户控件名为(Indexcontrol.ascx)“:
List<dataob> data = null;
dataManager target = new dataManager();
//pass the parameter to a stored procedure and update it
target.LoadFromDatabase(ref data);
this.ViewData.Model =data;
return View("Index");
我试图看看如果信息在数据对象中使用类似的路径显示一个表,所有这些都在用户控件中
<tbody >
<% foreach (businesslayer.dataob m in ViewData.Model)
{ %>
<tr>
<td><%= m.ID%></td>
<td><%= m.Date %></td>
<td><%= m.Description %></td>
</tr>
<% } %>
</tbody>
我想出了问题....因为我将table属性设置为runat = server这就是什么给了我错误..不知道为什么但它确实
答案 0 :(得分:5)
我不确定你为什么要避开ViewData.Model。在这种情况下我没有理由看到原因:
ViewData["data"] = data;
更喜欢
ViewData.Model = data;
如果您使用强类型的View页面,则可以避免同时转换模型。然后你可以简单地做:
<% foreach (dataob m in ViewData.Model) { %>
<tr>
<td><%= m.Id %></td>
<td><%= m.user %></td>
<td><%= m.Date %></td>
</tr>
<% } %>
答案 1 :(得分:0)
尝试:
<% foreach (dataob m in (IEnumerable<dataob>) ViewData["data"]) { %>