不管使用什么来开发程序,都少不了需要做分页,目前使用asp.net mvc开发的web应用程序的人越来越多了,相应的辅助,提高开发效率的helper方法、控件都将会出现。今天我向大家介绍一款在asp.net mvc框架中使用的分页控件。
MvcPager的介绍
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码,尤其是ScottGu的 PagedList<T>类和相关方法,经过站长不断完善和改进后推出的比较成熟而且功能强大的ASP.NET MVC分页解决方案。
MvcPager主要功能有:
1. 实现最基本的url route分页;
2. 支持手工输入或选择页索引并对输入的页索引进行有效性验证;
3. 支持使用ASP.NET MVC Ajax默认的MicrosoftAjax和MicrosoftMvcAjax客户端脚本库实现Ajax分页;
4. 支持使用jQuery实现Ajax分页,生成的Html代码更精简;
5. 支持Ajax分页模式下,若客户端浏览器不支持或禁用Javascript功能时安全降级为普通分页
6. 搜索引擎友好,无论是普通分页还是Ajax分页,搜索引擎都可以直接搜索到所有页面。
7. 支持ASP.NET MVC 1.0和最新的ASP.NET MVC 2.0 版本;
8. 支持IE、Firefox、Opera、Chrome及Safari等常用浏览器;
9. 插入分页控件代码:
10. <%=Html.Pager(Model,new PagerOptions{PageIndexParameterName="id"}) %>
实例效果:View代码:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master"
Inherits="System.Web.Mvc.ViewPage<PagedList<Order>>" %>
<%@ Import Namespace="Webdiyer.WebControls.Mvc"%>
<%@ Import Namespace="MvcPagerSample.Models"%>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
MvcPager 标准Url分页示例
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>MvcPager 标准Url分页示例</h2>
<table width="98%">
<tr><th>订单编号</th><th>订单日期</th><th>顾客编号</th><th>收货地址</th></tr>
<%foreach(Order od in Model)
{
%>
<tr><td><%=od.OrderID %></td><td><%=od.OrderDate.ToString() %></td>
<td><%=od.CustomerID %></td><td><%=od.ShipAddress %></td></tr>
<%
} %>
</table>
<%=Html.Pager(Model, new PagerOptions { PageIndexParameterName = "id" })%>
</asp:Content>
Controller代码:
public ActionResult Index(int? id)
{
using (var db = new MvcPagerSampleDataContext())
{
PagedList rders = db.Orders.ToPagedList(id ?? 1, 20);
return View(orders);
}
}
10.JPG
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。