首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用ASP.Net MVC对网格进行分页和排序

使用ASP.Net MVC对网格进行分页和排序
EN

Stack Overflow用户
提问于 2009-01-30 17:46:37
回答 5查看 58.5K关注 0票数 53

我是MVC的新手,不了解如何在网格上进行分页和排序。我习惯于将asp.Net GridView控件与指向我们业务层中的对象的ObjectDataSource一起使用-在这种情况下,ODS使用我们的ORM在对象上生成的方法来处理所有的分页和排序。

我已经考虑过在MVC中使用相同的ORM -在那里一切都很好-我只是循环遍历集合来在页面上构建表-但是没有ODS来处理分页和排序,我不知道该如何处理。我会有一个单独的控制器来进行分页和排序吗?

我知道我需要推出我自己的--但是我从哪里开始呢?我已经创建了一个CustomerController和一个显示客户表的视图,如下所示--我想按FirstName或LastName列进行排序。我的Model有一个Sort()方法,它将接受GridView/ODS对使用的格式的字符串排序表达式。我会在我的CustomerController上创建一个名为Sort的新操作,并在我的header中放置一个ActionLink吗?

代码语言:javascript
运行
复制
    <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>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-01-30 22:43:24

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

或者,如果你想在客户端做一些事情,你可以使用像tablesorter这样的插件。

票数 29
EN

Stack Overflow用户

发布于 2011-03-18 17:02:36

如今,MVC3现在有了一个开箱即用的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表,也可以为它提供一个端点,在那里它可以检索数据(所有或只有一个页面)。

还有更多,谷歌搜索一下就知道了。

票数 38
EN

Stack Overflow用户

发布于 2009-01-30 17:58:33

使用MVC,你必须自己排序,分页,等等。我建议你使用YUI DataTable或者其他一些JavaScript网格。

此外,如果你发现自己正在做繁重的数据网格工作,你可能想看看ASP.NET动态数据,它是专门为这些类型的与对象关系管理的交互而设计的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/496470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档