MVC 使用PageList进行分页
1.新建MVC项目
2.在Web项目下添加PagedList
nuget 命令 :install-package pagedlist.mvc
在安装完成之后,会在Content下添加PagedList.css文件,这个是在分页中会用到的样式
3.有些人用的数据来源是其他地方来的,就用Ilist 的类型进行分页吧
顺便做一下json文件的转换
安装newtonsoft.json
Nuget 命令 :install-package newtonsoft.json
4.在Models中添加model类型定义 TestModel ,用来转换的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace MvcApplication2.Models
{
public class TestModel
{
public string Name { get; set; } public int? Age { get; set; } public string Remark { get; set; }
}
}
5.创建Controller 进行管理,代码中使用局部页添加到index页中,分页之后还是跳转到局部页中,就是随笔一记,不做多的处理
index ACtion中产生数据,并将其计入到静态变量中国
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcApplication2.Models;
using Newtonsoft.Json;
using PagedList; namespace MvcApplication2.Controllers
{
public class PartTestController : Controller
{
//
// GET: /PartTest/
static IList<TestModel> models = new List<TestModel>(); public ActionResult Index()
{
Random rd = new Random();
models.Add(new TestModel() { Name = "test1", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
models.Add(new TestModel() { Name = "test" + rd.Next(, ) + "", Age = rd.Next(, ), Remark = "Remark" });
return View();
} public PartialViewResult PagedListFun(string searchStr, string orderType, int? page)
{
if (!string.IsNullOrWhiteSpace(searchStr))
{
page = ;
} string str = JsonConvert.SerializeObject(models); string jsonstr = str; IList<TestModel> list = JsonConvert.DeserializeObject<IList<TestModel>>(jsonstr); var res = from q in list
where q.Name.Contains(searchStr ?? "")
select q; //if (orderType.ToLower() == "desc")
//{
res = res.OrderByDescending(o => o.Name);
//} int pageSize = ;
int pageNumber = (page ?? ); return PartialView("PagedListFun", res.ToPagedList(pageNumber, pageSize));
} }
}
6. 在index中加载页面
@{
Layout = null;
ViewBag.Title = "Index";
}
<script src="~/Scripts/jquery-1.8.2.js"></script>
<h2>Index</h2>
<div id="partTime"></div>
<script type="text/javascript">
$(function () {
$.ajax({
url: "@Url.Action("PagedListFun")",
type: "get",
data: {name:'mxh'},
success: function (data) {
$("#partTime").html(data);
},
error:function(error) {
$("#partTime").html(error.text);
}
});
});
</script>
7.在局部也中进行分页处理
@model PagedList.IPagedList<MvcApplication2.Models.TestModel>
@using PagedList.Mvc <link href="~/Content/PagedList.css" rel="stylesheet" />@*一定要加入这个,不然没有样式*@
@{
Layout = null;
ViewBag.Title = "PagedListFun";
} <ul>
@foreach (var item in Model)
{
<li>@item.Name @item.Age @item.Remark</li>
}
</ul> Page @(Model.PageCount < Model.PageNumber ? : Model.PageNumber) of @Model.PageCount
@Html.PagedListPager(Model, page => Url.Action("PagedListFun", new { page }))
MVC 使用PageList进行分页的更多相关文章
- 【.NET MVC分页】.NET MVC 使用pagelist 分页
1.安装 2. 在NuGet程序包管理控制台 ,输入Install-Package PagedList.mvc 安装PagedList 和PageList.Mvc; 3. @{ Layout = nu ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(8)-MVC与EasyUI DataGrid 分页
系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 EasyUI Datagrid在加载的时候会提交一些分页的信息到后台,我们需要根据这些信息来进行数据分页再次返回到前台 实 ...
- MVC 使用Jquery EasyUI分页成功
先上图吧
- MVC中的自定义控件——分页
上一篇是个简单例子,这篇借分页写个升级版的例子. 不想拼html代码,因为不好修改,那写一个PartialView. @model System.Web.Mvc.PagerModel @if (Mod ...
- MVC如何使用开源分页插件shenniu.pager.js
最近比较忙,前期忙公司手机端接口项目,各种开发+调试+发布现在几乎上线无问题了:虽然公司项目忙不过在期间抽空做了两件个人觉得有意义的事情,一者使用aspnetcore开发了个人线上项目(要说线上其实只 ...
- MVC默认路由实现分页-PagerExtend.dll
这两天在群里有人咨询有没有现成的.net mvc分页方法,由此写了一个简单分页工具,这里简单分享下实现思路,代码,希望能对大家有些帮助,鼓励大家多造些轮子还是好的. A.效果(这里用了bootstra ...
- MVC使用x.PagedList分页
MVC分页 1.Install Package Tools=> NuGet Package Manager=>Manager NuGet Packages of Solution
- MVC 下 使用MvcPager分页控件
先去下载 mvcpage http://mvcpager.codeplex.com/releases/view/64098只需要一个 MvcPager.dll文件即可 然后引用MvcPager.dll ...
- asp.net mvc 的几种分页Pager
第一种 /// <summary> /// 分页Pager显示 /// </summary> /// <param name="html">&l ...
随机推荐
- escape和unescape给字符串编码
var before = "\xxx\xxx" var after = escape(before); var after2 = unescape(after );
- WIFI网络访问(一)
一,WIFI 网卡有哪些状态? WIFI 总共有以下五个状态,实际就是一些整形常量: 1. WIFI_STATE_DISABLED : WIFI 不能使用,其值是: 1 . 2. WIFI_S ...
- web.xml中的主要元素说明(listener, filter, servlet)
web.xml中加载的顺序为:context-param ---> listener ---> filter ---> servlet. listener:主要针对的是对象的操作,如 ...
- CAD2014以上版本不信任加载项解决方法
前一段时间做CAD插件支持版本升级遇到了一个很棘手的问题,CAD2014以上版本增加了受信任功能,每次用程序启动CAD并加载arx文件时都弹出对话框询问是否加载 我的解决方法如下:(仅供参考) 读取注 ...
- 一个简化的printf函数
<C和指针>第7章第5道编程题: 实现一个简化的printf函数,它能够处理%d.%f.%s 和 %c 格式码,根据ANSI标准的原则,其他格式码的行为是未定义的.你可以假定已经存在函数 ...
- c语言 列出-终止系统进程
#include <stdio.h> #include "stdafx.h" #include <Windows.h> #include <strin ...
- Repository仓储 UnitofWork
Repository仓储 UnitofWork 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 本章我们来创建仓储类Repository 并且引入 UnitOfWork 我对 ...
- MySQLBackup 使用说明
001.mysqlbackup介绍: mysqlbackup是一个热备份工具.也就是说它不像mysqldump那样给表上一个全局锁,由于mysqldump上了这个锁,所以就造成客户端只能对 数据库进行 ...
- nginx upload module的使用
现在的网站,总会有一点与用户交互的功能,例如允许用户上传头像,上传照片,上传附件这类的.PHP写的程序,对于上传文件效率不是很高.幸好,nginx有一个名为upload的module可以解决这个问题. ...
- MDX基础
第一章 看了本书的第一章,总体一个印象,废话真多.话不多说:整理书中知识点,实践出真理! 知识点:MDX语法:简单的函数介绍; 首先语法网上流传的很多,读者应该具备cube(多维数据集)的知识基础,我 ...