2012-07-27 67 views
3

过去几天我一直在使用MVC ...如何在MVC3中将数据绑定到网格?

我必须在网格中显示一堆数据......这些所有的日子我设法在一张表中显示,但我的要求是绑定它的jQuery网格或的WebGrid ...

我坚持这一点,我不知道如何做到这一点期待的想法和建议....

控制器

 public ActionResult Index() 
    { 
     var bugList = GetList(); 
     return View(bugList); 
    } 
    public List<ProjectModel> GetList() 
    { 
     var modelList = new List<ProjectModel>(); 
     using (SqlConnection conn = new SqlConnection("Data Source=LMIT-0039;Initial Catalog=BugTracker;Integrated Security=True")) 
     { 
      conn.Open(); 
      SqlCommand dCmd = new SqlCommand("Select * from Projects", conn); 
      SqlDataAdapter da = new SqlDataAdapter(dCmd); 
      DataSet ds = new DataSet(); 
      da.Fill(ds); 
      conn.Close(); 
      for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++) 
      { 
       var model = new ProjectModel(); 
       model.ID = Convert.ToInt16(ds.Tables[0].Rows[i]["ProjectID"]); 
       model.projectName = ds.Tables[0].Rows[i]["projectName"].ToString(); 
       model.Description = ds.Tables[0].Rows[i]["Description"].ToString(); 
       model.status = ds.Tables[0].Rows[i]["Status"].ToString(); 
       modelList.Add(model); 
      } 
     } 
     return modelList; 
    } 

视图(ASPX)

<table> 
<thead align="center"> 
<tr class="BoldCenterAlignHeaderStyle">  

    <th> 
     ProjectName 
    </th>  
    <th> 
     Status 
    </th> 
    <th align="center"> 
    Edit 
    </th>   
</tr> 
</thead> 
    <% foreach (var item in Model) { %> 
     <tr>   
     <td> 
     <%:Html.LabelForModel(item.projectName) %> 
     </td>  
     <td> 
     <%:Html.LabelForModel(item.status) %> 
     </td> 
     <td align="center"> 
     <a href="<%:Url.Action("Edit",new{id=item.ID}) %>" class="Edit"><img src="../../Content/edit.gif" height="8px"/></a> 
      <%--<%:Html.ActionLink("Edit", "Edit", new { id = item.ID })%> --%>   
     <%-- <a href="<%:Url.Action("Delete",new{id=item.ID}) %>" class="Delete"><img src="../../Content/delete.gif" height="8px" /></a>--%> 
     </td>   
     </tr> 
    <%} %> 

,如果我能在一个表中我如何能做到这一点,否则我应该如何显示他在网格中的数据可以在任何一个可以帮助我,请做分页... 。can any any explain me how to do this

+0

如何做到这一点的 – SoftwareNerd 2012-07-27 09:01:20

回答

1

举例的WebGrid:

@model IEnumerable<ProjectModel> 
@{ 
    var grid = new WebGrid(
    source: Model, 
    rowsPerPage: 4); 
} 
@grid.GetHtml(
    tableStyle: "grid", 
    headerStyle: "header", 
    rowStyle: "row", 
    footerStyle: "footer", 
    alternatingRowStyle: "altRow", 
    columns: grid.Columns (
     grid.Column("projectName"), 
     grid.Column("ProjectID") 
)) 
+0

aspx页面如何做到这一点的 – SoftwareNerd 2012-07-27 09:01:38

+0

aspx页面@anilkumar取代 “@ {” 与<%和内<包装你grind.GetHtml%。不要忘记用“<%@ Page”声明替换“@model”。 – 2012-07-27 13:09:57