View中加入引用:@using Webdiyer.WebControls.Mvc;
使用时代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <div id= "Pagination" > @Html.Pager(Model.DataList, new PagerOptions { PageIndexParameterName = "PageIndex" , ShowPrevNext = true , FirstPageText = "首页" , PrevPageText = "上一页" , NextPageText = "下一页" , LastPageText = "末页" , HorizontalAlign= "right" , PagerItemTemplate= " {0}" }) </div> |
后台Controller:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | public ActionResult NewsList( int tid = 1, int PageIndex = 1) { int PageSize = 10; int RecordCount = db.ArticlesInfos.Count(); int PageCount = (RecordCount / PageSize) + (RecordCount % PageSize > 0 ? 1 : 0); ViewData[ "Tid" ] = tid; PagedList<Models.ArticlesInfo> list = db.ArticlesInfos.OrderByDescending(c => c.ID).AsQueryable().ToPagedList(PageIndex, PageSize); ViewModel.MVCPagerModel<Models.ArticlesInfo> model = new ViewModel.MVCPagerModel<Models.ArticlesInfo>(); model.PageCount = PageCount; model.RecordCount = RecordCount; model.PageSize = PageSize; model.PageIndex = PageIndex; model.DataList = list; return View(model); } |
分页类:
1 2 3 4 5 6 7 8 | public class VMNewsListPage<T> { public int PageIndex { get ; set ; } public int PageCount { get ; set ; } public int RecordCount { get ; set ; } public int PageSize { get ; set ; } public PagedList<T> ArticlesInfos { get ; set ; } } |
demo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | @{ ViewBag.Title = "NewsList" ; Layout = "~/Views/Shared/_LayoutPageOne.cshtml" ; } @model MvcApplication1.ViewModel.MVCPagerModel<MvcApplication1.Models.ArticlesInfo> @ using Webdiyer.WebControls.Mvc; @section header{ } <div class = "pageban" style= "background-image: url(/images/20141002091135849.jpg);" ></div> <div class = "Contain" > <!-- /*内容*/ --> <div class = "Left" > <div class = "Sidebar" > <div class = "title" >新闻动态</div> <ul class = "sub" > <li><a href= "NewsList?tid=1&PageIndex=1" id= "a_group_1" class = "@(Convert.ToInt32(ViewData[" Tid "]) == 1 ? " aon " : " ")" >公司新闻</a></li> <li><a href= "NewsList?tid=2&PageIndex=1" id= "a_group_2" class = "@(Convert.ToInt32(ViewData[" Tid "]) == 2 ? " aon " : " ")" >行业动态</a></li> </ul> @Html.Partial( "UCLeftContact" ) </div> <!-- /*正文*/ --> <div class = "Main" > <div class = "Current" > <em> 您在这里: <a href= "Index" >首页</a> > <a href= "NewsList?tid=@ViewData[" Tid "]&PageIndex=1" id= "a_group_nav_1" >新闻动态</a> > <a href= "NewsList?tid=@ViewData[" Tid "]&PageIndex=1" id= "a_group_nav_2" >@(Convert.ToInt32(ViewData[ "Tid" ]) == 1 ? "公司新闻" : "行业动态" )</a> > </em> <b id= "a_group_nav_3" >@(Convert.ToInt32(ViewData[ "Tid" ]) == 1 ? "公司新闻" : "行业动态" )</b> </div> <!-- /*新闻列表*/ --> <dl class = "Newlist" > @ foreach ( var item in Model.DataList) { <dd> <div class = "pic" > <a href= "NewsDetail?id=@item.ID" target= "_blank" title= "@item.Title" > <img src= "@item.Img" alt= "@item.Title" > </a> </div> <div class = "text" > <h1> <span>@item.CreateDate.ToString( "yyyy-MM-dd" )</span> <a href= "NewsDetail?id=@item.ID" target= "_blank" style= "" >@item.Title</a> </h1> <p>@(Framework.Common.Utils.GetHtml(HttpUtility.HtmlDecode(item.Contents), 60))...</p> <a href= "NewsDetail?id=@item.ID" target= "_blank" class = "detail" >详细>></a> </div> </dd> } </dl> <!-- /*pages*/ --> <div id= "Pagination" > @Html.Pager(Model.DataList, new PagerOptions { PageIndexParameterName = "PageIndex" , ShowPrevNext = true , FirstPageText = "首页" , PrevPageText = "上一页" , NextPageText = "下一页" , LastPageText = "末页" , HorizontalAlign = "right" , PagerItemTemplate = " {0}" }) </div> <!-- /*新闻列表end */ --> </div> <div class = "clear" ></div> </div> @Html.Partial( "UCDetailsRight" ) <div class = "clear" ></div> <!-- /*内容 end*/ --> </div> |
Redis桌面管理器:http://redisdesktop.com/download
参考:http://www.webdiyer.com/mvcpager/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】