当前位置:  开发笔记 > 编程语言 > 正文

使用ASP.Net MVC分页和排序网格

如何解决《使用ASP.NetMVC分页和排序网格》经验,为你挑选了2个好方法。

我是MVC的新手,并没有关注你如何在网格上进行分页和排序.我习惯使用asp.Net GridView控件和指向业务层中对象的ObjectDataSource - 在这种情况下,ODS使用ORM在对象上生成的方法处理所有的分页和排序.

我已经看过使用与MVC相同的ORM - 并且事情在那里工作得很好 - 我只是循环通过集合来构建页面上的表 - 但没有ODS来处理分页和排序,我很困惑我该怎么做 我是否有一个单独的控制器用于分页和排序?

我知道我需要自己动手 - 但我从哪里开始?我创建了一个CustomerController,以及一个显示如下所示客户表的视图 - 我想对FirstName或LastName列进行排序.我的模型上有一个Sort()方法,它将采用GridView/ODS对使用的格式的字符串排序表达式.我会在我的CustomerController上创建一个名为Sort的新Action,并在我的标题中添加一个ActionLink吗?

    
    <% foreach (var item in Model)
       { %>
    
    <% } %>
First Name Last Name
<%= Html.Encode(item.FirstName) %> <%= Html.Encode(item.LastName) %>

Matthijs Wes.. 38

如今MVC 3现在已经开箱即用了webGrid.我知道这个问题是从不久前开始的,但是当我找到关于webGrid的东西时,我最终得到了它.所以我认为它应该有一个答案,提到新的webGrid.

以下是一些关于如何使用它的好帖子:

http://www.dotnetcurry.com/ShowArticle.aspx?ID=615

http://cnug.co.in/blogs/shijuv/archive/2010/10/08/using-the-webgrid-helper-in-asp-net-mvc-3-beta.aspx

http://www.nickharris.net/tag/webgrid/

它支持排序,分页和一些Ajax的东西.它可以为您做很多事情,但您也可以单独指定每个单独的列.

更新:
还有许多可用的JavaScript库可供您使用.我个人喜欢使用DataTables.您可以将其提供给服务器上生成的现有html表,或者为其提供可以检索数据的端点(全部或仅一页).

还有更多,只有谷歌.



1> Matthijs Wes..:

如今MVC 3现在已经开箱即用了webGrid.我知道这个问题是从不久前开始的,但是当我找到关于webGrid的东西时,我最终得到了它.所以我认为它应该有一个答案,提到新的webGrid.

以下是一些关于如何使用它的好帖子:

http://www.dotnetcurry.com/ShowArticle.aspx?ID=615

http://cnug.co.in/blogs/shijuv/archive/2010/10/08/using-the-webgrid-helper-in-asp-net-mvc-3-beta.aspx

http://www.nickharris.net/tag/webgrid/

它支持排序,分页和一些Ajax的东西.它可以为您做很多事情,但您也可以单独指定每个单独的列.

更新:
还有许多可用的JavaScript库可供您使用.我个人喜欢使用DataTables.您可以将其提供给服务器上生成的现有html表,或者为其提供可以检索数据的端点(全部或仅一页).

还有更多,只有谷歌.


这是MSDN上另一篇有关更多细节的好文章:http://msdn.microsoft.com/en-us/magazine/hh288075.aspx

2> Morph..:

您可以使用相同的控制器,只需添加一个额外的参数并命名它排序.然后检查控制器排序的值,并根据该参数对数据进行排序.

或者如果你想在客户端做一些事情,你可以使用诸如tablesorter之类的东西,一个用于jquery的插件.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有