在MVC中显示数据库数据表

时间:2009-01-05 15:19:30

标签: c# asp.net-mvc model-view-controller

更改解决方案:我正在尝试显示数据的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这就是什么给了我错误..不知道为什么但它确实

2 个答案:

答案 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"]) { %>