存储过程分页 练习

后台

/// <summary>
        /// 存储过程分页
        /// </summary>
        /// <param name="PageIndex"></param>
        /// <param name="PageSize"></param>
        /// <param name="name"></param>
        /// <returns></returns>
        public PageList<UserModel> show(int PageIndex, int PageSize, string name = "")
        {
            var count = 0;
            SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=UserPrivilege;Integrated Security=True");
            SqlCommand cmd = new SqlCommand("Proc_User", conn);
            cmd.CommandType = System.Data.CommandType.StoredProcedure;
            cmd.Parameters.Add(new SqlParameter("@PageIndex", System.Data.SqlDbType.Int)).Value = PageIndex;
            cmd.Parameters.Add(new SqlParameter("@PageSize", System.Data.SqlDbType.Int)).Value = PageSize;
            cmd.Parameters.Add(new SqlParameter("@Count", System.Data.SqlDbType.Int));


            if (!string.IsNullOrWhiteSpace(name))
            {
                cmd.Parameters.Add(new SqlParameter("@Name", System.Data.SqlDbType.NVarChar, 50)).Value = name;
            }
            else
            {
                cmd.Parameters.Add(new SqlParameter("@Name", System.Data.SqlDbType.NVarChar, 50)).Value = name;
            }

            cmd.Parameters["@Count"].Direction = ParameterDirection.Output;
            SqlDataAdapter dr = new SqlDataAdapter(cmd);
            DataTable ds = new DataTable();
            dr.Fill(ds);
            count = Convert.ToInt32(cmd.Parameters["@Count"].Value);

            var reust = JsonConvert.SerializeObject(ds);
            var reust2 = JsonConvert.DeserializeObject<List<UserModel>>(reust);

            PageList<UserModel> ss = new PageList<UserModel>();
            ss.page = reust2;
            ss.PageIndex = PageIndex;
            ss.PageSize = PageSize;
            if (count % PageSize == 0)
            {
                ss.Count = count / PageSize;
            }
            else
            {
                ss.Count = count / PageSize + 1;
            }
            return ss;
        }

BLL

    public PageList<UserModel> show(int PageIndex, int PageSize, string name = "")
        {
            return dal.show(PageIndex, PageSize,name);
        }

控制器

  [HttpPost]
        public ActionResult Index(int  PageIndex,string name = "")
        {
            var reust = new BLL.UserBLL().show(PageIndex, 3,name);
            return Json(reust);
        }

前台

 <div>
        <input id="Text1" type="text" />
        <input id="Button1" type="button" value="查询" οnclick="cha()" />
        <table>
            <tr>
                <td>编号</td>
                <td>用户名</td>
                <td>密码</td>
            </tr>
            <tbody id="idname">

            </tbody>
        </table>
    </div>
    <div id="pageHtml">

    </div>
    <script>
        $(function () {
            show(1, "pageHtml");
        })
        function show(PageIndex, pageHtml,name)
        {
            $.ajax({
                url: "/show/Index",
                type: "post",
                data: { PageIndex: PageIndex ,name:name},
                dataType:"json",
                success: function (data) {
                    alert(data);
                    var str = "";
                    for (var i = 0; i <data.page.length; i++) {
                        str += "<tr>";
                        str += "<td>" + data.page[i].ID + "</td>";
                        str += "<td>" + data.page[i].Name + "</td>";
                        str += "<td>" + data.page[i].Pwd + "</td>";
                        str += "</tr>";
                    }
                    $("#idname").html(str);
                    debugger;
                    var page = "";
                    var totalPage = data.Count;
                    var first = PageIndex < 2 ? 1 : PageIndex - 1;
                    var nest = PageIndex == totalPage ? totalPage : PageIndex + 1;

                    page += " 当前页:<span style=\"color:red;font-size:18px;\" >" + PageIndex + "/" + totalPage + "</span>总页数";
                    page += " <span   οnclick=\"show(1)\">首页</span>";
                    page += "   <span  οnclick=\"show(" + first + ")\">上一页</span>";
                    page += "   <span  οnclick=\"show(" + nest + ")\">下一页</span>";
                    page += "   <span οnclick=\"show(" + totalPage + ")\">尾页</span>";

                    $("#pageHtml").html(page);
                }


            })

        }
        function cha()
        {
            var name = $("#Text1").val();
            show(1, "pageHtml",name);
        }
    </script>

转载于:https://www.cnblogs.com/net520/p/7928172.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值