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

2024-03-14

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

我已经考虑过在 MVC 中使用相同的 ORM - 事情进展顺利 - 我只是循环遍历集合以在页面上构建表格 - 但没有 ODS 来处理分页和排序,我很困惑我会怎么处理。我是否需要一个单独的控制器来进行分页和排序?

我知道我需要自己动手 - 但我从哪里开始呢?我创建了一个 CustomerController 和一个显示客户表的视图,如下所示 - 我想对 FirstName 或 LastName 列进行排序。我的模型有一个 Sort() 方法,它将采用 GridView/ODS 对使用的格式的字符串排序表达式。我是否会在 CustomerController 上创建一个名为 Sort 的新操作,并将 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>

如今,MVC 3 现在拥有开箱即用的 webGrid。我知道这个问题是不久前提出的,但我在寻找有关 webGrid 的内容时最终遇到了这个问题。所以我认为它应该有一个提及新 webGrid 的答案。

这里有一些关于如何使用它的好帖子:

http://www.dotnetcurry.com/ShowArticle.aspx?ID=615 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://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/ http://www.nickharris.net/tag/webgrid/

它支持排序、分页以及一些 Ajax 功能。它已经可以为您做很多事情,但您也可以单独指定每个单独的列。

Update:
还有许多可用的 JavaScript 库可以为您制作表格。我个人喜欢用数据表 http://www.datatables.net/。您可以向其提供服务器上生成的现有 html 表,或者为其提供一个可以检索数据(全部或仅一页)的端点。

还有很多,只有谷歌。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ASP.Net MVC 进行分页和排序网格 的相关文章

  • sitecore 站点内嵌套虚拟目录或应用程序是否可能

    我想将 ASP NET Web 应用程序嵌套在 sitecore 站点中 如下所示
  • 发布时出错:System.DirectoryServices.DirectoryServicesCOMException

    我在我的 asp net MVC 解决方案中使用 AD 身份验证 它在本地服务器中工作 但是当我发布它时 我收到错误 System DirectoryServices DirectoryServicesCOMException 发生操作错误
  • asp.net mvc 主要细节

    我想使用 ASP NET MVC Entity Framework 创建一个用于订单输入的网页 此页面包含订单和订单输入信息 对于每个订单 我可以有多个订单详细信息 如果您知道如何使用 ASP NET MVC Entity Framewor
  • 在 Foreach 或 For 循环中使用 EditorFor (ASP.NET MVC + RAZOR)

    我目前正在实施一个家谱我的 ASP NET MVC 项目中的系统 为了设置家庭成员之间的关系 我需要每行显示两个 ComboBox DropDownList 来定义一个成员与另一个成员之间的关系 首先我将分享我的代码 然后我将解释到目前为止
  • ASP.NET WebApi - 一个控制器中的多个 GET 操作

    I have Users控制器和基本 REST 模式工作得很好 不过我需要一种额外的模式users id usergroups这将返回该用户的所有用户组 实现这一点的最佳方法是什么 因为我想我将需要在更多控制器上使用类似的路由 仅使用默认值
  • 使用 jQuery 获取 ASP.Net Gridview 的 rowIndex

    您好 是否可以使用 jQuery 获取 gridview 的当前行索引 一点背景 我使用模板字段中的服务器端链接按钮从 gridview 中删除行 如下所示
  • 在我的网站上显示 Google Analytics(分析)仪表板

    我设置了一个 ASP NET 网站 并使用 Google Analytics 进行页面跟踪 我唯一不喜欢的是我必须离开我的网站 到 Google Analytics 网站 才能看到该报告 有什么方法可以使用他们拥有的所有 AJAX 在我自己
  • ChannelFactory重用策略

    我一直在读到 ChannelFactory 的创建是昂贵的 除非有技术原因不这样做 否则应该在可能的情况下重用 ChannelFactory 或者通过某种方式缓存它们 或者使用工厂的静态实例 根据您的经验 您发现哪些 ChannelFact
  • 设置 runat=server 时输入名称和 id 发生变化

    在我的表单中 我需要插入 文本 类型的不同输入 输入必须是带有名称和 ID 的 html 控件 因为我将此表单发送到外部网址 对于验证 我在所有输入中执行 runat server 然后我可以使用 requiredfieldvalidato
  • 关于实体框架上下文生命周期的问题

    我对 ASP NET MVC 应用程序中实体框架上下文的所需生命周期有一些疑问 让上下文在尽可能短的时间内保持活动状态不是最好的吗 考虑以下控制器操作 public ActionResult Index IEnumerable
  • 如何在ASP.NET服务器的web.config文件中使用Azure Pipeline中设置的环境变量?

    我打算在 ASP NET 中使用 Azure Pipeline 中的以下环境变量web config file
  • ASP.NET 更改模板字段中 Gridview 单元格中的文本和颜色

    我在 ASP net 中有 Gridview 显示数据 根据数据 它会根据单元格的值更改颜色和文本 当列不是模板字段时 这可以正常工作 WORKS WHEN IS NOT A TEMPLATE FIELD if e Row RowType
  • 确定最接近的已知颜色

    我允许我的应用程序的用户选择自定义颜色 并希望有一种方法来显示每种颜色的友好名称 而不是显示十六进制代码的文本表示形式 我如何找到最近的System Drawing Color对于给定的十六进制代码 希望这对某人有帮助 Public Fun
  • 基于网络的应用程序中的图表

    可使用 ASP NET 在网页上显示图表的各种图表工具有哪些 我了解 Dundas 和 Infragistics 等商业工具 我可以用谷歌搜索这个 但我想知道参与者使用过的各种工具 任何可用的免费图表工具也欢迎提及 如果您不介意使用 Fla
  • Android 初学者:Android gridview 中的触摸事件

    我正在使用以下代码来使用 gridview 执行操作 稍作修改http developer android com resources tutorials views hello gridview html http developer a
  • 序列包含多个元素

    我在通过 Linq 获取 RhsTruck 类型的列表并显示它们时遇到一些问题 RhsTruck 只有属性 品牌 型号 序列号 等 RhsCustomer 具有 CustomerName CustomerAddress 等属性 我不断收到错
  • mvc4 捆绑包,它是如何工作的?

    在 mvc4 中 他们使用捆绑包来调用所有脚本和 css 文件一次 据我所知 调用js和cs文件时 它们的顺序很重要 如果我使用捆绑包 我如何知道捆绑包内的 css 和 js 文件的顺序是否正确 我可以定制订购吗 我现在的日期选择器有问题
  • Android 手机作为 GSM 调制解调器在 PC 上发送/接收短信?

    是否可以将 Android 移动设备用作 PC 上的 GSM 调制解调器 我正在 net下开发应用程序来发送 接收短信等 现在我想通过 USB 将我的 Android 设备连接到我的 PC 并将其用作 GSM 调制解调器来与其通信 这里是参
  • C# 中的合并运算符?

    我想我记得看到过类似的东西 三元运算符 http msdn microsoft com en us library ty67wk28 28VS 80 29 aspx在 C 中 它只有两部分 如果变量值不为空 则返回变量值 如果为空 则返回默
  • ASP.NET Click() 事件在第二次回发时不会触发

    我有一个 ASP NET Web 表单 我第一次提交表单时 会引发 提交按钮单击 事件 表单返回到浏览器时可能会出现验证错误 或者可以选择使用新值再次提交表单 当再次提交表单时 提交按钮单击 事件永远不会触发 Page Load 触发 但按

随机推荐

  • 在更新语句中获取最新的行版本/时间戳值 - Sql Server

    我正在使用 rowversion 列来处理乐观并发 并希望在完成更新后获取新的 rowversion 值 以便我的数据层具有最新值 并且可以通过获取并发异常来执行另一次更新 除非记录有已被其他人更新 我只是在更新后进入数据层 但这不是很有效
  • MVVM-light + RIA 服务最佳实践 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使 angular.js 路由长路径

    我正在使用 angular js 制作一个文件浏览器 所以 我会处理一些长网址 eg mydomain folder1 sub1 grand sub1 我只是学习 Angular 并发现 Angular 有 routeProvider 但是
  • Android:表没有名为“变量名称”的列 MySql 数据库错误

    当我尝试在数据库中添加新条目时 出现如下所示的错误 我现在已经搜索了几个小时 但无法发现问题所在 任何输入都会很棒 这里是来自 LogCat 的错误 02 27 23 02 51 451 E SQLiteLog 6777 1 table d
  • 如何在 phpstorm 中使用 phalcon-devtools\ide\phpstorm?

    我正在尝试将 Phalcon 开发人员工具与 phpstorm 集成 有一个视频在这里 http docs phalconphp com en 0 5 0 reference tools html integrating tools wit
  • 从 Visual Studio Code 调试 vue-cli 3 生成的应用程序

    我使用 vue cli 3 0 0 rc 3 生成了一个应用程序 现在我想使用 Visual Studio Code Chrome 调试器 对其进行调试 但是我似乎找不到打开 sourceMaps 的选项 我在 VSCode 中设置了断点
  • 单击按钮后重新绘制 JPanel

    我是 Java Swing 的新手 我有一个奇怪的问题需要刷新我的JPanel 我创建一个静态的JPanel我的框架中的组件 我从一个调用静态方法FileListenner重新粉刷我的JPanel public static void re
  • REST Web 服务版本控制实践

    我正在创建一个新的 Web 服务 并且我已经阅读了 APIgee 的一些电子书 其中建议对 Web 服务进行版本控制 我知道在 URL 与标头中保留版本控制信息之间存在一些 斗争 根据我所阅读和理解的内容 我想在标头中使用版本控制 我的问题
  • 使用 Nancy 返回包含有效 Json 的字符串

    我从另一个服务收到一个包含有效 JSON 的字符串 我只想与 Nancy 转发此字符串 但还将内容类型设置为 application json 这将使我无需在客户端使用 parseJSON data 如果我使用 Response AsJso
  • 你调用的对象是空的

    我使用以下代码来检查之前添加到复选框列表中的数据库表中的值 但在此处收到 对象引用未设置为对象的实例 错误 ListItem currentCheckBox chkbx Items FindByValue rdr MemberID ToSt
  • 如何使用 C# 隐藏/显示进程?

    在执行我的程序时 我想隐藏 最小化 Microsoft 语音识别应用程序 替代文本 http img143 imageshack us img143 9380 minimize png http img143 imageshack us i
  • 有没有办法同时使用布局宽度和高度的权重

    我有一个布局 其中有四个按钮沿着我的应用程序底部分布 使用布局权重将它们均匀分布 我还想使用相同的权重来增加按钮的高度 到目前为止 我所能看到的只是使用水平线性布局计算宽度或使用垂直线性布局计算高度 宽度效果很好 只是高度 如果重量不能同时
  • 通过右键单击任务栏可以防止 WinForms 中的死锁

    我的 Windows C NET 应用程序遇到了一个奇怪的问题 实际上它是一个GUI应用程序 我的工作是包含网络组件 封装在程序集中 我不知道主 GUI 应用程序的代码 不过我可以联系它的开发者 现在 应用程序的 UI 具有用于 启动 和
  • 如何将 java.io.File 转换为 java.lang.Class 来运行它?

    我有一个程序可以让用户选择任何 class or jar文件并运行它 问题是 要运行它 我需要使用除java io File 这是什么JFileChooser返回 我怎样才能做一个java io File into a java lang
  • 定义独立于数据库的 JPA 对象 uid

    事实证明 以下示例在使用 mysql 5 x 时有效 但在使用 oracle 10g 数据库时无效 有没有一种方法可以定义独立于数据库技术的唯一标识符字段 Id GeneratedValue strategy GenerationType
  • Java获取某个目录下所有文件的程序

    我正在开发这个程序来获取目录中的所有文件 由于某种原因 我在第 16 行收到 NullPointerException 但我不知道为什么 因为这是一个似乎在课堂上与我们的老师一起工作的模板 谢谢 import java util impor
  • MySQL 无法从现有表中进行选择,因为它不存在?

    我不知道发生了什么事 我有一张桌子叫project share invite 几个小时前 在我们的生产环境中 我无法再针对该表发出 SELECT MySQL 声称该表不存在 尽管它显示在show tables 今天机器上发生的唯一值得注意的
  • 搜索包含指定文本的 div

    我想在我的网站上创建一个搜索功能 在其中搜索 div 并忽略不符合我搜索内容的 div div 列表如下所示 div class subjects div soccer div div dancing div div soap div di
  • 如何以不同的风格或不同的构建类型使用不同的 proguard 文件?

    我需要为测试库制作不同的风格 为什么 好吧 我希望项目得到完全保护 所以我想始终启用缩小功能 即使对于调试构建类型 在进行测试时 我使用项目中的不同类 所以我决定使用flavor来更改proguard文件 它看起来像这样 android b
  • 使用 ASP.Net MVC 进行分页和排序网格

    想要改进这篇文章吗 提供此问题的详细答案 包括引用和解释为什么你的答案是正确的 不够详细的答案可能会被编辑或删除 我是 MVC 新手 并且不了解如何在网格上进行分页和排序 我习惯于使用 asp Net GridView 控件以及指向业务层中