1.引入MvcPager.dll(MvcPager分页控件:http://www.webdiyer.com/mvcpager/)

2.后台C# Controller:

//Ddemo使用Webdiyer.MvcPager的分页方法

/// <summary>

/// 分页显示

/// 使用Webdiyer.MvcPager的分页方法Demo

/// </summary>

/// <param name="pageIndex">页码,第几页(从第一页开始),与前端声明的参数对应</param>

public ActionResult Index(int pageIndex = 1 )

{

//使用Webdiyer.MvcPager的ToPagedList()方法

//返回自定义的PagedList<Test>类型,而非.NET标准的List或Queryable类型

//会查两次数据库:1.总记录数。2.当页数量的记录

PagedList<Test> wholeData = db.Tests.OrderBy(t => t.Sno).ToPagedList(pageIndex, 5);

//视图的模型类型会不匹配而出错。即使修改视图头部的model声明也不行,因为使用了Webdiyer.MvcPager的Pager分页方法

//var wholeData = db.Tests.OrderBy(t => t.Sno).Skip((pageIndex - 1) * 5).Take(5);

return View(wholeData);

}

3.前端html:

@Html.Pager(Model, new PagerOptions

{   PageIndexParameterName = "pageIndex",     //对应控制器参数

ShowPageIndexBox = true,

PageIndexBoxType = PageIndexBoxType.DropDownList,

ShowGoButton = false,

NumericPagerItemCount = 4

}

)

4.详见TestController\Index()方法。

  public class TestController : Controller
{
TestContext db = new TestContext(); //Ddemo使用Webdiyer.MvcPager的分页方法
/// <summary>
/// 分页显示
/// 使用Webdiyer.MvcPager的分页方法Demo
/// </summary>
/// <param name="pageIndex">页码,第几页(从第一页开始)</param>
public ActionResult Index(int pageIndex = )
{
//使用Webdiyer.MvcPager的ToPagedList()方法
//返回自定义的PagedList<Test>类型,而非.NET标准的List或Queryable类型
//会查两次数据库:1.总记录数。2.当页数量的记录
PagedList<Test> wholeData = db.Tests.OrderBy(t => t.Sno).ToPagedList(pageIndex, ); //视图的模型类型会不匹配而出错。即使修改视图头部的model声明也不行,因为使用了Webdiyer.MvcPager的Pager分页方法
//var wholeData = db.Tests.OrderBy(t => t.Sno).Skip((pageIndex - 1) * 5).Take(5);
return View(wholeData);
}
}
 @using System.Collections.Generic;
@using Webdiyer.WebControls.Mvc;
@*@model IQueryable<TestModel.Models.Test>*@
@model PagedList<TestModel.Models.Test>
@{
ViewBag.Title = "学生列表";
}
<h2>@ViewBag.Title</h2>
@Html.ActionLink("增加", "Create")
@if (Model != null)
{
<table>
<tr>
<td>
学号
</td>
<td>
姓名
</td>
<td>
年龄
</td>
<td>
操作
</td>
<td>
所选课程查询
</td>
</tr>
@foreach (var dt in Model)
{
<tr>
<td>@dt.Sno
</td>
<td>@dt.Sname
</td>
<td>@dt.Age
</td>
<td>
@Html.ActionLink("编辑", "Edit", new { sNo = dt.Sno }, null)
@Html.ActionLink("删除", "Delete", new { sNo = dt.Sno }, new { onclick = "javascript:return confirm('确认要删除吗?');" })
</td>
<td>@Html.ActionLink("查询", "Index", "SelectCourse", new { sNo = dt.Sno }, null)
</td>
</tr> }
</table>
@Html.Pager(Model, new PagerOptions
{ PageIndexParameterName = "pageIndex",
ShowPageIndexBox = true,
PageIndexBoxType = PageIndexBoxType.DropDownList,
ShowGoButton = false,
NumericPagerItemCount = 4
}
)
}

MvcPager分页控件的使用的更多相关文章

  1. MvcPager分页控件以适用Bootstrap

    随笔- 9  文章- 0  评论- 33  修改MvcPager分页控件以适用Bootstrap 效果(含英文版,可下载)   软件开发分页效果必不可少,对于Asp.Net MVC 而言,MvcPag ...

  2. MvcPager分页控件使用注意事项!

    初学MVC,做了个单页面应用,需要显示多个分页,并无刷新更新. 找到了MvcPager控件,非常好用,在使用ajax过程中遇到很多问题.慢慢调试和杨老师(MvcPaegr作者)请教,总于都解决了. 首 ...

  3. 开源mvcpager分页控件分页实例

    最近MVC需要用到分页,然后在网上找了一圈,发现一个很好用的分页控件,在此要感谢作者的辛勤劳动. 下载Pager 这个分页控件也有Asp.net的支持,需要的去看看作者的主页 webdiyer 先看看 ...

  4. MVC 下 使用MvcPager分页控件

    先去下载 mvcpage http://mvcpager.codeplex.com/releases/view/64098只需要一个 MvcPager.dll文件即可 然后引用MvcPager.dll ...

  5. 修改MvcPager分页控件以适用Bootstrap 效果(含英文版,可下载)

    软件开发分页效果必不可少,对于Asp.Net MVC 而言,MvcPager 是个不错的选择.请访问http://www.webdiyer.com/mvcpager/ 由于自带的分页样式不能和项目整体 ...

  6. MvcPager 分页控件

    官方教程: http://www.webdiyer.com/mvcpager

  7. MvcPager 免费开源分页控件3.0版发布!

    MvcPager 3.0版在原2.0版的基础上进行了较大的升级,对MvcPager脚本插件重写并进行了大量优化.修复了部分bug并新增了客户端Javascript API等功能,使用更方便,功能更强大 ...

  8. 基于存储过程的MVC开源分页控件--LYB.NET.SPPager

    摘要 现在基于ASP.NET MVC的分页控件我想大家都不陌生了,百度一下一大箩筐.其中有不少精品,陕北吴旗娃杨涛大哥做的分页控件MVCPager(http://www.webdiyer.com/)算 ...

  9. MVC——分页控件

    不管是什么类型的网站,分页都是必不可少的功能实现.在这里记录一下我自己接触过的分页控件: 一. MvcPager控件(记得项目里添加MvcPager.dll的引用) 这里面比较常用的就 ——@Html ...

随机推荐

  1. Session: 防止用户多次登陆

    在web开发时,有的系统要求同一个用户在同一时间只能登录一次,也就是如果一个用户已经登录了,在退出之前如果再次登录的话需要报错. 常见的处理方法是,在用户登录时,判断此用户是否已经在Applicati ...

  2. SQL事务用法begin tran,commit tran和rollback tran的用法

    Sql Server 2005/2008中提供了begin tran,commit tran和rollback tran来使用事务. begin tran表示开始事务, commit tran表示提交 ...

  3. 文件的存储读写,XML文件的存储与读写

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s ...

  4. vim 全局替换命令

    语法  :[addr]s/源字符串/目的字符串/[option]                     :%s/源字符串/目的字符串/c 全局替换命令为: :%s/源字符串/目的字符串/g [add ...

  5. DP ZOJ 3872 Beauty of Array

    题目传送门 /* DP:dp 表示当前输入的x前的包含x的子序列的和, 求和方法是找到之前出现x的位置(a[x])的区间内的子序列: sum 表示当前输入x前的所有和: a[x] 表示id: 详细解释 ...

  6. MapReduce多线程下的错误

    最近在写一个MR调度程序,在以服务进程中同时开启了两个MapReduce线程.这两个MR共享同一份输入源,此时会造成Cast异常: java.lang.ClassCastException: org. ...

  7. POJ1625 Censored!(AC自动机+DP)

    题目问长度m不包含一些不文明单词的字符串有多少个. 依然是水水的AC自动机+DP..做完后发现居然和POJ2778是一道题,回过头来看都水水的... dp[i][j]表示长度i(在自动机转移i步)且后 ...

  8. 2015ACM/ICPC亚洲区长春站 L hdu 5538 House Building

    House Building Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) ...

  9. Html5的DeviceOrientation特性

    设备定位API 引用W3C中的设备定位API的规范描述可知,该API“……定义了多种新型DOM事件,旨在提供与主机设备相关的物理朝向与运动状态信息.”由API提供的数据产生自多种来源,其中包括设备上的 ...

  10. 【SPOJ】10628. Count on a tree(lca+主席树+dfs序)

    http://www.spoj.com/problems/COT/ (速度很快,排到了rank6) 这题让我明白了人生T_T 我知道我为什么那么sb了. 调试一早上都在想人生. 唉. 太弱. 太弱. ...