1.准备工作
MVCPager源码和Demo:
http://mvcpager.codeplex.com/releases/view/64098
其实就改了一个地方,数据类型由IQuery改成IList,加入一个TotalCount(总记录数量)参数
2.实现
首先来个图,吊吊胃口
①Model,没什么好说
using System;
System.Collections;
/* *
* 作者:jackchain* QQ : 710782046
* Email:ovenjackchain@gmail.com
*/
namespace Model
{
public class comnotices
{
#region 构造函数
comnotices()
{}
#endregion
属性
/// <summary> 自动增长 </summary>
int nid
{
get ;
set ;
}
信息类别 string category
{
信息标题 title
{
信息内容 infodetails
{
发布时间 publishdate
{
发布人 publishman
{
访问量 hits
{
;
}
获得自增键 private ReturnAutoID()
{
return " nid " ;
}
}
}
②Controller
[OutputCache(Duration
=
300
)]
// condition是条件,page是当前页面
ActionResult Index( condition "" , page 1 )
{
if (condition.ToLower() != all )
condition category=' + Server.HtmlDecode(condition.Replace( ' )) ' else ;
ToPagedList就是修改的MVCpager方法,参数:当前页号,分页大小,总记录数量
FindAllByPage是自己实现的分页方法,根据条件只取当前页面的数据 PagedList < comnotices > notices mgr.FindAllByPage(((page - ) * 20 ).ToString(),0)">20 11 ).ToPagedList(page,0)">.Parse(mgr.GetTotalCount( (Request.IsAjaxRequest())
PartialView( NewsAjaxList View(notices);
}
// condition是条件,page是当前页面
ActionResult Index( condition "" , page 1 )
{
if (condition.ToLower() != all )
condition category=' + Server.HtmlDecode(condition.Replace( ' )) ' else ;
ToPagedList就是修改的MVCpager方法,参数:当前页号,分页大小,总记录数量
FindAllByPage是自己实现的分页方法,根据条件只取当前页面的数据 PagedList < comnotices > notices mgr.FindAllByPage(((page - ) * 20 ).ToString(),0)">20 11 ).ToPagedList(page,0)">.Parse(mgr.GetTotalCount( (Request.IsAjaxRequest())
PartialView( NewsAjaxList View(notices);
}