zoukankan      html  css  js  c++  java
  • 老生常谈: Asp.net Mvc3 加载cshtml文件自定义分页+ 查询

    上次写了篇:老生常谈:Asp.net Mvc 3 加载cshtml文件创建自定义分页

    遇到的问题: 单纯的数据列表,分页ok,但是加上其它外界因素,常见的如  查询,排序,分页如何跟它们结合呢?

    分页如何和查询,排序结合?

    我的思路,查询、排序为主,分页为次。

               1.查询条件改变,页码重新加载,当前页面从1重新开始

               2. 查询后生成的页码保存查询对应的参数和值,从而模拟查询+分页的效果。

    拓展分页控件,使其可以包含其它参数。

    常见的传参方式: Url传值,Form传值

    常见的数据格式: Text 和 json

    更改原有设计:

    DataType  参数类型 text/json

    PageModel 页码类包含:

                                   PageIndex 页码索引

                                   PageText 页码显示文本

    Pager 分页控件类

                                   PagerTemp 分页控件加载cshtml或者ascx名称

                                   PagerID 分页控件ID

                                   PagerShow 是否显示分页

                                   PageSize 每页显示的记录数目

                                   CurPage  当前页的索引

                                   PageNum 最少显示的页码数目[偏移量]

                                   Totalpage 总页数

                                   TotalSize 总记录数据

                                   List<PageModel> 页码列表

                                   ControllerName  控制器名称

                                   ActionName   动作名称

                                   DataType 数据格式

                                   Dictionary<string,string> 参数列表

                                   PageData 数据

    PageHelper 分页控件生成类,拓展HtmlHelper用于创建分页控件

                                  public static MvcHtmlString Pager(this HtmlHelper helper,
                                       string pagerId, //分页控件Id
                                       int curPage, //当前页码
                                       int totalSize, //总记录数
                                       string pagerTemp = "_PagerTemp", //分页控件模板
                                       int pageSize = 10, //每页显示10条
                                       int pageNum = 5, //显示的页码数目

                                       string datatype = "text", //默认是Url传值
                                       Dictionary<string, string> parameters = null //参数列表

                                       ){

                                               //创建分页控件方法

                                     }

    _PageTemp  分页控件显示的模板

    总结: 美中不足的一点是 查询或者过滤条件改变的时候,要清空 curPage 为 1

    点击下载

  • 相关阅读:
    spring声明式事务管理详情解析
    Nginx nginx.conf配置文件详细说明
    etcd
    rsyslog使用简介
    LINUX常见命令
    kafka简介&使用
    kafka安装
    Zookeeper简介&应用场景
    Zookeeper安装
    安装JDK
  • 原文地址:https://www.cnblogs.com/birchlee/p/2195468.html
Copyright © 2011-2022 走看看