基于ASP.NET的MVC框架下的MvcPaper分页控件的使用技术
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Webdiyer.WebControls.Mvc; namespace MvcGuestBook.Common
{
public static class MvcPaper
{
/// <summary>
/// 重写PagedList可以使用List集合数据
/// </summary>
/// <typeparam name="T">实体类</typeparam>
/// <param name="allItems">IList集合</param>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">一页显示的数量</param>
/// <returns>PagedList<T></returns>
public static PagedList<T> ToPagedList<T>(this IList<T> allItems, int pageIndex, int pageSize)
{
if (pageIndex < )
pageIndex = ;
var itemIndex = (pageIndex - ) * pageSize;
var pageOfItems = allItems.Skip(itemIndex).Take(pageSize);
var totalItemCount = allItems.Count();
return new PagedList<T>(pageOfItems, pageIndex, pageSize, totalItemCount);
}
}
} public ActionResult IndexPage(int? id = )
{
IList<Message> userList = new List<Message>();
int totalCount = ;
int pageIndex = id ?? ;
userList = Common.Common.TableToList<Message>(_messageRepository.GetLists("").Tables[]); //var queryable = userList.AsQueryable(); //userList = SC.Repository.User.GetList("", 2, (pageIndex - 1) * 2, out totalCount); PagedList<Message> mPage = Common.MvcPaper.ToPagedList<Message>(userList, pageIndex, );
totalCount = userList.Count;
mPage.TotalItemCount = totalCount;
mPage.CurrentPageIndex = (int)(id ?? );
return View(mPage);
} <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<PagedList<MvcGuestBook.Models.Message>>" %> <%@ Import Namespace="Webdiyer.WebControls.Mvc"%> <asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
IndexPage
</asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>IndexPage</h2> <table>
<tr>
<th></th>
<th>
ID
</th>
<th>
MemberID
</th>
<th>
Body
</th>
<th>
IsSecret
</th>
<th>
AdminReply
</th>
<th>
AdminReplyTime
</th>
<th>
CreateTime
</th>
</tr> <% foreach (var item in Model) { %> <tr>
<td>
<%: Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) %> |
<%: Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ })%> |
<%: Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })%>
</td>
<td>
<%: item.ID %>
</td>
<td>
<%: item.MemberID %>
</td>
<td>
<%: item.Body %>
</td>
<td>
<%: item.IsSecret %>
</td>
<td>
<%: item.AdminReply %>
</td>
<td>
<%: String.Format("{0:g}", item.AdminReplyTime) %>
</td>
<td>
<%: String.Format("{0:g}", item.CreateTime) %>
</td>
</tr> <% } %> </table> <%: Html.Pager(Model, new PagerOptions
{ PageIndexParameterName="ID",ShowPageIndexBox=true,
FirstPageText="首页",PrevPageText="上一页",NextPageText="下一页",LastPageText="末页",PageIndexBoxType=PageIndexBoxType.TextBox,
PageIndexBoxWrapperFormatString="请输入页数{0}",GoButtonText="转到"})%> <br />
>>分页 共有 <%: Model.TotalItemCount %> 篇留言 <%: Model.CurrentPageIndex %>/<%: Model.TotalPageCount %>
<p>
<%: Html.ActionLink("Create New", "Create") %>
</p> <p>
<%: Html.ActionLink("返回第一种分页方法", "Index") %>
</p> </asp:Content> 详细源码示例链接: http://download.csdn.net/download/u012949335/10189580
基于ASP.NET的MVC框架下的MvcPaper分页控件的使用技术的更多相关文章
- 【干货分享】JPager.Net MVC超好用轻量级分页控件
JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现非常简单,使用也非常简单. JPager.Net M ...
- ASP.NET Core MVC TagHelper实践HighchartsNET快速图表控件-开源
ASP.NET Core MVC TagHelper最佳实践HighchartsNET快速图表控件支持ASP.NET Core. 曾经在WebForms上写过 HighchartsNET快速图表控件- ...
- MVC 下 使用MvcPager分页控件
先去下载 mvcpage http://mvcpager.codeplex.com/releases/view/64098只需要一个 MvcPager.dll文件即可 然后引用MvcPager.dll ...
- MVC中的自定义标签分页控件,仅供大家学习!!
public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, ...
- asp.net webform 自定义分页控件
做web开发一直用到分页控件,自己也动手实现了个,使用用户自定义控件. 翻页后数据加载使用委托,将具体实现放在在使用分页控件的页面进行注册. 有图有真相,给个直观的认识: 自定义分页控件前台代码: & ...
- Net MVC轻量级分页控件
JPager.Net MVC超好用轻量级分页控件 JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现 ...
- 【转】ASP.NET MVC框架下使用MVVM模式-KnockOutJS+JQ模板例子
KnockOutJS学习系列----(一) 好几个月没去写博客了,最近也是因为项目紧张,不过这个不是借口,J. 很多时候可能是因为事情一多,然后没法静下来心来去写点东西,学点东西. 也很抱歉,突然看到 ...
- 【工作笔记二】ASP.NET MVC框架下使用MVVM模式
ASP.NET MVC框架下使用MVVM模式 原文:http://www.cnblogs.com/n-pei/archive/2011/07/21/2113022.html 对于asp.net mvc ...
- ASP.NET Core 入门教程 2、使用ASP.NET Core MVC框架构建Web应用
一.前言 1.本文主要内容 使用dotnet cli创建基于解决方案(sln+csproj)的项目 使用Visual Studio Code开发基于解决方案(sln+csproj)的项目 Visual ...
随机推荐
- python入门第3篇 pycharm安装及使用
内容: 1. python开发工具的介绍及安装 2.pycharm的设置及技巧 一.python开发工具的介绍及安装 python下载后就自带了一个官方的IDE,官方的IDE我个人觉得不是很好用,所以 ...
- eclipse 预览Android界面报错
This version of the rendering library is more recent than your version of ADT plug-in. Please update ...
- 跟我学算法- tensorflow VGG模型进行测试
我们使用的VGG模型是别人已经训练好的一个19层的参数所做的一个模型 第一步:定义卷积分部操作函数 mport scipy.io import numpy as np import os import ...
- NotePad++替换行前、行后空格,替换空行
用 Notepad++ 打开,把每一个将要放在表中单元格的内容放一行(注: ^ 代表行首 $ 代表行尾) 去除行尾空格和空白行:按CTRL+H 选择正则表达式– 查找目标:\s+$ 替换为空 去除行首 ...
- centos 使用windows7 存储
1. 在Windows7上创建一个带密码的用户,如disk 2. 创建一个文件夹,如 D:\centos-disk2 3. 选中此文件夹,点击上方的 共享 -> 特定用户, 添加disk用户, ...
- MyEclipse10.0 配置 Tomcat1.7
1 首先 从网上下载Tomcat1.7,然后放到本机目录. 2 然后在MyEclipse10.0菜单Preferences 指向Tomcat的路径,我本机路径是 D:\Program Files (x ...
- [Java] Java API文档下载方法
Java API文档下载方法:http://jingyan.baidu.com/article/a3aad71ac9e48fb1fb009692.html Oracle : http://www.or ...
- LIst和table的转换
public static class DataTableExtensions { /// <summary> /// 转化一个DataTable /// </summary> ...
- Caffe 议事(二):从零开始搭建 ResNet 之 网络的搭建(上)
3.搭建网络: 搭建网络之前,要确保之前编译 caffe 时已经 make pycaffe 了. 步骤1:导入 Caffe 我们首先在 ResNet 文件夹中建立一个 mydemo.py 的文件,本参 ...
- Linux服务器上日志报com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1783 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
在做查询数据库操作时,报了以上错误,还有out of memery heap hacp ,原因是MySQL的max_allowed_packet设置过小引起的,我一开始设置的是1M,后来改为了20M ...