我是MVC的新手,不了解如何在网格上进行分页和排序。我习惯于将asp.Net GridView控件与指向我们业务层中的对象的ObjectDataSource一起使用-在这种情况下,ODS使用我们的ORM在对象上生成的方法来处理所有的分页和排序。
我已经考虑过在MVC中使用相同的ORM -在那里一切都很好-我只是循环遍历集合来在页面上构建表-但是没有ODS来处理分页和排序,我不知道该如何处理。我会有一个单独的控制器来进行分页和排序吗?
我知道我需要推出我自己的--但是我从哪里开始呢?我已经创建了一个CustomerController和一个显示客户表的视图,如下所示--我想按FirstName或LastName列进行排序。我的Model有一个Sort()方法,它将接受GridView/ODS对使用的格式的字符串排序表达式。我会在我的CustomerController上创建一个名为Sort的新操作,并在我的header中放置一个ActionLink吗?
<table>
<tr>
<th>
First Name
</th>
<th>
Last Name
</th>
</tr>
<% foreach (var item in Model)
{ %>
<tr>
<td>
<%= Html.Encode(item.FirstName) %>
</td>
<td>
<%= Html.Encode(item.LastName) %>
</td>
</tr>
<% } %>
</table>
发布于 2009-01-30 22:43:24
您可以使用相同的控制器,只需添加一个额外的参数并将其命名为sort。然后在控制器中检查排序的值,并根据该参数对数据进行排序。
或者,如果你想在客户端做一些事情,你可以使用像tablesorter这样的插件。
发布于 2009-01-30 17:58:33
使用MVC,你必须自己排序,分页,等等。我建议你使用YUI DataTable或者其他一些JavaScript网格。
此外,如果你发现自己正在做繁重的数据网格工作,你可能想看看ASP.NET动态数据,它是专门为这些类型的与对象关系管理的交互而设计的。
https://stackoverflow.com/questions/496470
复制相似问题