zoukankan      html  css  js  c++  java
  • ASP.NET Web API教程(四) 分页查询

      看过前三篇文章的朋友,应该对Asp.net Web api 有个初步的了解,起码了解了web api的编码方式。那么这一篇就分享一下web api中的分页。话不多说,直接上硬货。
      接下来的内容都是在上一篇中的扩展,所以找不到的资料可以从上一篇中下载到。
      首先增加支持分页的API方法

    public IEnumerable<UserInfo> GetUserInfos(int pageindex, int size)
            {
                return bll.Get().Skip((pageindex - 1) * size).Take(size);
            }


    增加一个新页面
    引入js

    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
        <script src="Scripts/knockout-2.1.0.js" type="text/javascript"></script>


    编写数据迭代显示模板

    <ul data-bind="template: {name: 'userinfoTemplate', foreach: userinfos}">
            </ul>


    UL为数据迭代容器模板

    <script id="userinfoTemplate" type="text/html">
                
    <li class="userinfo">
                        
    <div class="info">                        
                            
    <strong><span data-bind="text: Name"></span></strong>
                           
    <span data-bind="text: Age"></span>
                        </div>
                </li>
            </script>


    Script id=’ userinfoTemplate’为数据项模板

    编写获取分页操作面板

    <fieldset>
    <label></label><input type="text" id="pageIndex" /><label></label><br />
    <label></label><input type="text" id="pageSize" /><label>条一页</label><br />
    <input type="button" value="获取" id="getButton" />
    </fieldset>


    开始编写js根据输入的页码和每页的数量获取

    <script type="text/javascript">
            viewModel 
    = {
                userinfos: ko.observableArray([])
            };
            ko.applyBindings(viewModel);
            $(
    "#getButton").click(function () {
                viewModel.userinfos([]);
                
    var pageSize = $('#pageSize').val();
                
    var pageIndex = $('#pageIndex').val();
                
    var url = "/api/userinfo?pageindex=" + pageIndex + '&size=' + pageSize;

                $.getJSON(url, 
    function (data) {
                    
    // 根据路径得到数据
                    viewModel.userinfos(data);
                });

                
    return false;

            });   
        
    </script>

    最终运行得到结果获取第一页,每一页1条的情况下



    获取第一页,每页2条的情况下

    本篇源码下载:

    /Files/risk/web api 4/MvcApplication1.rar



     

    作者:risk
    出处:http://www.cnblogs.com/risk
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    ios 数据类型转换 UIImage转换为NSData NSData转换为NSString
    iOS UI 12 block传值
    iOS UI 11 单例
    iOS UI 08 uitableview 自定义cell
    iOS UI 07 uitableviewi3
    iOS UI 07 uitableviewi2
    iOS UI 07 uitableview
    iOS UI 05 传值
    iOS UI 04 轨道和动画
    iOS UI 03 事件和手势
  • 原文地址:https://www.cnblogs.com/risk/p/2658164.html
Copyright © 2011-2022 走看看