2012-03-29 66 views
2

我使用MVC 3剃须刀,我使用下面的Web表格显示的一些数据,网格排序不工作MVC 3剃须刀

什么,我需要整理我的第一列。我在其他页面上也使用了类似的代码来进行排序,并且它工作正常,但在这里看起来似乎不起作用。

但是,如果我转到下一页说第2页,现在我单击排序,它按升序排序,然后再次排序相同的问题。

<div id="grid"> 
     @{ 
      // added ajaxContainerId 
      var listgrid = new WebGrid(source: Model.ABC, rowsPerPage: 2, ajaxUpdateContainerId: "grid"); 

      @listgrid.GetHtml(    

       columns: listgrid.Columns(
       listgrid.Column("ColName", format: @<text><a href="javascript:ShowData(@item.ColName);">@item.Name</a></text>, canSort:true), 
       listgrid.Column(null, "Delete", (item) => MvcHtmlString.Create(string.Format("<a href='DeleteList/{0}'>Delete</a>", @item.Name))),      
           )) 
     } 
    </div> 

回答

5

完整的文章在:http://yassershaikh.com/mvc-3-web-grid-sorting-not-working/

使用COLUMNNAME属性的帮助下,我用错列名,因为它的排序是不工作

这里是我的代码现在使用

<div id="grid"> 
    @{ 
     // added ajaxContainerId 
     var listgrid = new WebGrid(source: Model.ABC, rowsPerPage: 2, ajaxUpdateContainerId: "grid"); 

     @listgrid.GetHtml(    

      columns: listgrid.Columns(
      listgrid.Column(header:"ColName", columnName="DbColName", format: @<text><a href="javascript:ShowData(@item.ColName);">@item.Name</a></text>, canSort:true), 
      listgrid.Column(null, "Delete", (item) => MvcHtmlString.Create(string.Format("<a href='DeleteList/{0}'>Delete</a>", @item.Name))),      
          )) 
    } 
</div> 

希望这可以帮助别人在未来!