分页查询

1.数据库

USE [master]
GO
/****** Object:  Database [RbacDB]    Script Date: 2020/6/2 23:51:00 ******/
CREATE DATABASE [RbacDB]CONTAINMENT = NONEON  PRIMARY
( NAME = N'RbacDB', FILENAME = N'D:\RbacDB.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )LOG ON
( NAME = N'RbacDB_log', FILENAME = N'D:\RbacDB_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )
GO
ALTER DATABASE [RbacDB] SET COMPATIBILITY_LEVEL = 140
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [RbacDB].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [RbacDB] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [RbacDB] SET ANSI_NULLS OFF
GO
ALTER DATABASE [RbacDB] SET ANSI_PADDING OFF
GO
ALTER DATABASE [RbacDB] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [RbacDB] SET ARITHABORT OFF
GO
ALTER DATABASE [RbacDB] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [RbacDB] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [RbacDB] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [RbacDB] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [RbacDB] SET CURSOR_DEFAULT  GLOBAL
GO
ALTER DATABASE [RbacDB] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [RbacDB] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [RbacDB] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [RbacDB] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [RbacDB] SET  DISABLE_BROKER
GO
ALTER DATABASE [RbacDB] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [RbacDB] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [RbacDB] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [RbacDB] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [RbacDB] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [RbacDB] SET READ_COMMITTED_SNAPSHOT OFF
GO
ALTER DATABASE [RbacDB] SET HONOR_BROKER_PRIORITY OFF
GO
ALTER DATABASE [RbacDB] SET RECOVERY FULL
GO
ALTER DATABASE [RbacDB] SET  MULTI_USER
GO
ALTER DATABASE [RbacDB] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [RbacDB] SET DB_CHAINING OFF
GO
ALTER DATABASE [RbacDB] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
GO
ALTER DATABASE [RbacDB] SET TARGET_RECOVERY_TIME = 60 SECONDS
GO
ALTER DATABASE [RbacDB] SET DELAYED_DURABILITY = DISABLED
GO
EXEC sys.sp_db_vardecimal_storage_format N'RbacDB', N'ON'
GO
ALTER DATABASE [RbacDB] SET QUERY_STORE = OFF
GO
USE [RbacDB]
GO
/****** Object:  Table [dbo].[Permissions]    Script Date: 2020/6/2 23:51:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Permissions]([ID] [int] IDENTITY(1,1) NOT NULL,[Name] [nvarchar](50) NULL,[Url] [nvarchar](50) NULL,[Remark] [nvarchar](50) NULL,CONSTRAINT [PK_Menus] PRIMARY KEY CLUSTERED
([ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object:  Table [dbo].[RolePermissions]    Script Date: 2020/6/2 23:51:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[RolePermissions]([ID] [int] IDENTITY(1,1) NOT NULL,[RoleID] [int] NULL,[PermissionID] [int] NULL,CONSTRAINT [PK_R_Role_Menus] PRIMARY KEY CLUSTERED
([ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object:  Table [dbo].[Roles]    Script Date: 2020/6/2 23:51:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Roles]([ID] [int] IDENTITY(1,1) NOT NULL,[Name] [nvarchar](50) NULL,[Remark] [nvarchar](50) NULL,CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED
([ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object:  Table [dbo].[UserInfos]    Script Date: 2020/6/2 23:51:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[UserInfos]([ID] [int] IDENTITY(1,1) NOT NULL,[Name] [nvarchar](50) NULL,[RoleID] [int] NULL,[Account] [nvarchar](50) NULL,[Pwd] [nvarchar](50) NULL,[Sex] [bit] NULL,[Hobby] [nvarchar](100) NULL,[Photo] [nvarchar](100) NULL,[Remark] [nvarchar](50) NULL,CONSTRAINT [PK_UserInfos] PRIMARY KEY CLUSTERED
([ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[Permissions] ON INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (2, N'用户管理', N'/userinfo/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (14, N'角色管理', N'/role/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (17, N'权限管理', N'/permission/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (22, N'教师管理', N'/teacher/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (23, N'班级管理', N'/classInfo/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (24, N'学生管理', N'/student/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (38, N'题库管理', N'/question/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (46, N'班级考试', N'/ClassInfoTestInfo/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (49, N'我的考试', N'/studenttestInfo/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (55, N'部门管理', N'/Department/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (56, N'给角色设置权限', N'/RolePermission/index', NULL)
INSERT [dbo].[Permissions] ([ID], [Name], [Url], [Remark]) VALUES (57, N'测试', N'/test/index', NULL)
SET IDENTITY_INSERT [dbo].[Permissions] OFF
SET IDENTITY_INSERT [dbo].[RolePermissions] ON INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (516, 3, 23)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (517, 3, 24)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (518, 4, 38)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (519, 4, 46)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (535, 1, 2)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (536, 1, 14)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (537, 1, 17)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (538, 1, 22)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (539, 1, 23)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (540, 1, 24)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (541, 1, 38)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (542, 1, 46)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (543, 1, 55)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (544, 1, 56)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (552, 5, 49)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (553, 2, 22)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (554, 2, 23)
INSERT [dbo].[RolePermissions] ([ID], [RoleID], [PermissionID]) VALUES (555, 2, 38)
SET IDENTITY_INSERT [dbo].[RolePermissions] OFF
SET IDENTITY_INSERT [dbo].[Roles] ON INSERT [dbo].[Roles] ([ID], [Name], [Remark]) VALUES (1, N'系统管理员', NULL)
INSERT [dbo].[Roles] ([ID], [Name], [Remark]) VALUES (2, N'人事主任', NULL)
INSERT [dbo].[Roles] ([ID], [Name], [Remark]) VALUES (3, N'教务主任', NULL)
INSERT [dbo].[Roles] ([ID], [Name], [Remark]) VALUES (4, N'教师', NULL)
INSERT [dbo].[Roles] ([ID], [Name], [Remark]) VALUES (5, N'学生', NULL)
SET IDENTITY_INSERT [dbo].[Roles] OFF
SET IDENTITY_INSERT [dbo].[UserInfos] ON INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (3, N'学院信息中心-彭主任', 1, N'admin', N'admin', 1, N'篮球,羽毛球', N'1.jpg', NULL)
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (10, N'学院人事处-尹主任', 2, N'yin', N'123', 1, N'游泳', N'2.jpg', N'很好')
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (12, N'学院教务处-李主任', 3, N'li', N'123', 0, N'跳舞', N'3.jpg', NULL)
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (14, N'胡瑶老师', 4, N'huyao', N'123', 0, N'跳舞', N'4.jpg', NULL)
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (15, N'韩冬敏老师', 4, N'handm', N'123', 0, N'唱歌', N'1.jpg', N'很靠谱')
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (20, N'全园园同学', 5, N'qyy', N'123', 0, N'健身', N'2.jpg', NULL)
INSERT [dbo].[UserInfos] ([ID], [Name], [RoleID], [Account], [Pwd], [Sex], [Hobby], [Photo], [Remark]) VALUES (21, N'易紫莹同学', 5, N'yizy', N'123', 0, N'演讲', N'3.jpg', NULL)
SET IDENTITY_INSERT [dbo].[UserInfos] OFF
ALTER TABLE [dbo].[RolePermissions]  WITH CHECK ADD  CONSTRAINT [FK_Role_Permissions_Permissions] FOREIGN KEY([PermissionID])
REFERENCES [dbo].[Permissions] ([ID])
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[RolePermissions] CHECK CONSTRAINT [FK_Role_Permissions_Permissions]
GO
ALTER TABLE [dbo].[RolePermissions]  WITH CHECK ADD  CONSTRAINT [FK_Role_Permissions_Roles] FOREIGN KEY([RoleID])
REFERENCES [dbo].[Roles] ([ID])
GO
ALTER TABLE [dbo].[RolePermissions] CHECK CONSTRAINT [FK_Role_Permissions_Roles]
GO
ALTER TABLE [dbo].[UserInfos]  WITH CHECK ADD  CONSTRAINT [FK_UserInfos_Roles] FOREIGN KEY([RoleID])
REFERENCES [dbo].[Roles] ([ID])
GO
ALTER TABLE [dbo].[UserInfos] CHECK CONSTRAINT [FK_UserInfos_Roles]
GO
/****** Object:  StoredProcedure [dbo].[cp_testClass_select_byTestID]    Script Date: 2020/6/2 23:51:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE proc [dbo].[cp_testClass_select_byTestID]
(@testID int
)
as
select c.ID as ClassInfoID,c.Name as ClassInfoName,ct.ID,ct.TestID,ct.Status,ct.StartTime,ct.EndTime,ct.Remark from  ClassInfos c left join (select * from Test_ClassInfos where TestID= @testID) ct
on c.ID=ct.ClassInfoID
GO
USE [master]
GO
ALTER DATABASE [RbacDB] SET  READ_WRITE
GO

2.分页查询的后台

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using WebApplication1.Models;namespace WebApplication1.Controllers
{public class RoleController : Controller{// GET: RoleRbacDBEntities db = new RbacDBEntities();public ActionResult Index(int pageIndex=1,int pageSize=10,string Name=""){//总记录数满足条件var counts = db.Roles.Where(p => p.Name.Contains(Name)).Count();var totalPage = Math.Ceiling(counts*1.00/pageSize );//根据页面的条数名称查询var rows = db.Roles.Where(p => p.Name.Contains(Name)).OrderBy(p => p.ID)//排序.Skip(pageSize * (pageIndex - 1))//跳过.Take(pageSize)//取.ToList();//转化为集合ViewBag.pageIndex = pageIndex;ViewBag.totalPage = totalPage;ViewBag.Name = Name ;ViewBag.pageSize = pageSize;return View(rows);}}
}

3.分页查询的前台


@{ViewBag.Title = "Index";
}
@using WebApplication1.Models<div style="display:flex;justify-content:space-between"><div class="btn-group"><button type="button" class="btn btn-default">新增</button><button type="button" class="btn btn-default">删除</button></div><div class="input-group"><label>名称</label><input type="text" id="txtCondName" value="@ViewBag.Name" /><input type="button" value="搜索" id="btnSearch" onclick=" page(1)"/></div>
</div><table class="table table-bordered "><thead><tr><th>编号</th><th>姓名</th><th>备注</th></tr></thead><tbody>@foreach (var item in Model){<tr><td>@item.ID</td><td>@item.Name</td><td>@item.Remark</td></tr>}</tbody>
</table><nav aria-label="Page navigation" style="display:flex;justify-content:space-between"><ul class="pagination"><li><a >共10页,第<input type="text" value=" 1" id="pageIndex" />页,每页显示<select id="pageSize" onchange="page(1)">@{var pageIndexs = new List<int> { 5, 10, 20, 50, 100 };}@foreach (var item in pageIndexs){if (@ViewBag.pageSize == @item){<option value="@item" selected="selected">@item</option>}else{<option value="@item" >@item</option>}}</select>条
</a></li></ul><ul class="pagination"><li><a href="javascript:page(1);">首页</a></li><li><a href="javascript:page(@ViewBag.pageIndex-1)">上页</a></li><li><a href="javascript:page(@ViewBag.pageIndex+1)">下页</a></li><li><a href="javascript:page(@ViewBag.totalPage)">末页</a></li><li><input type="button" value="go" onclick="go(); " /></li></ul>
</nav>@section Scripts{<script>function page(pageindex) {var pageSize = $("#pageSize").val();var name= $("#txtCondName").val();window.location.href = "/role/index?pageindex="+ pageindex + "&pageSize="+ pageSize + "&name="+ name }function go() {var pageindex = $("#pageIndex").val();page(pageindex);}</script>}

4.部分代码讲解

a.js代码

@section Scripts{<script>function page(pageindex) {var pageSize = $("#pageSize").val();var name= $("#txtCondName").val();window.location.href = "/role/index?pageindex="+ pageindex + "&pageSize="+ pageSize + "&name="+ name //初始的写就是"/role/index?//pageindex="+1 而这个1代表的是这个页面的写死页数,然后我们把他改成变量,//用pageindex来替代,pagesize表示有多少个页面,name就是搜索文本框的名字}function go() {var pageindex = $("#pageIndex").val();page(pageindex);//就是到指定的页面去}</script>

asp.net分页查询相关推荐

  1. 多年以前提高asp.net分页查询效率的一个实例

    2004年数据库查询优化实例 情况:sqlserver 2000,资源表,记录近30万条.资源有一个整数的id字段,自动增量,但是资源可以被删除.所以,id并不连续. 用.net SqlDataAda ...

  2. (easyui datagrid+mvc+json)之asp.net分页查询

    最近在做分页查询的功能,在网上也翻看了不少,但是自己的吸收能力就差了好多,而且当时最大的想法就是,怎么就没有我想要的那种,既是easyui的,又要用mvc的架构,还要能够实现底层的分页传值,用.net ...

  3. easyui datatable ajax 加载数据,ASP.NET easyUI--datagrid 通过ajax请求ASP.NET后台数据的分页查询...

    js前台对datagrid的定义代码,如下 mygrid = $('#mytable').datagrid({ fit: true, //自动大小 height: 'auto', rownumbers ...

  4. 利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理

    在Asp.net Web API中,对业务数据的分页查询处理是一个非常常见的接口,我们需要在查询条件对象中,定义好相应业务的查询参数,排序信息,请求记录数和每页大小信息等内容,根据这些查询信息,我们在 ...

  5. ASP+Access网站开发相关 【2】ASP + Access登录 列表 分页 查询

    包含两个文件:管理员登陆页面adminsearch.asp  conn.asp和登录成功之后需要跳转到的查询页面search.asp 1.文件名:adminsearch.asp <%@LANGU ...

  6. QuickPager asp.net 分页控件 转

    QuickPager asp.net 分页控件.表单控件等自定义控件下载 和介绍 最新下载地址: 自然框架的源代码.Demo.数据库.配置信息管理程序下载(2010.01.25更新) QuickCon ...

  7. .NET Core使用EF分页查询数据报错:OFFSET语法错误问题

    在Asp.Net Core MVC项目中使用EF分页查询数据时遇到一个比较麻烦的问题,系统会报如下错误: 分页查询代码: 1 var newQuery = query.Skip((condition. ...

  8. ASP.NET分页方法的了解程度

    ASP.NET分页方法的了解程度 [出现频率] ★★★★☆ [解答] ASP.NET分页的常用方法有以下几种. q 启用部分数据控件的内置分页功能,如设置GridView控件的"AllowP ...

  9. AspNet.WebAPI.OData.ODataPQ实现WebAPI的分页查询服务-(个人拙笔)

    AspNet.WebAPI.OData.ODataPQ 这是针对 Asp.net WebAPI OData 协议下,查询分页.或者是说 本人在使用Asp.Net webAPI 做服务接口时写的一个分页 ...

最新文章

  1. window.onload和jquery中$(function(){ })的区别
  2. 前端工程师算法(一)
  3. CSS padding
  4. linux 安装vbox增强工具
  5. android 6.0 dm-verity技术,Android 7.0安全性大幅提升,要求严格强制执行验证启动
  6. Java实现冒泡排序动画展示
  7. leetcode 164. 最大间距(桶排序)
  8. mysql 5.5.18下载_MySQL5.7.18下载和安装过程图文详解
  9. Linux内核写入s3c2440,Linux空板的系统写入
  10. 基于php mysql技术_基于PHP和MySQL技术的网络教学平台构建
  11. 看电影(movie):组合数
  12. ffmpeg CLI常用命令
  13. 【LeetCode】3月18日打卡-Day3
  14. iPhone 5福音 网友发布Nano-SIM剪卡教程
  15. excel如何自动填充123456……
  16. cocos2dx[2.x](13)--基本绘图DrawPrimitives
  17. Forcing close of thread
  18. 如何使用注册表在Win10中调整屏幕亮度
  19. 【2018年总】——感谢遇见,感谢拥有,感谢失去
  20. excel透视表 统计结果 累加

热门文章

  1. c语言程序0xc0000005解决方案,应用程序无法正常启动0xc0000005如何解决
  2. DDN周报|3月19日-3月25日
  3. 仿淘宝关闭二维码案例
  4. kaggle比赛——Jigsaw Rate Severity of Toxic Comments(NLP类型)——分析获奖模型笔记
  5. 【Python 每日一技】建立多个值和单个键的映射
  6. php 三维数组合并成二维数组_Excel VBA 数组知识点,数组能不能用好,就看这个你学会没有...
  7. Servlet的生命周期,及Servlet和CGI的区别
  8. 二手电脑与Ubuntu的经历-2-显卡知识
  9. (25):SPA单页面的理解
  10. 外贸人如何从SiteGround购买建站外贸主机