EasyUIEasyUI 之 DataGrid利用用拉姆达表达式实现分页查询

  第一,我们以DataGrid的URL中丰富我们而查询的规范:查询用户称不是“呵呵”的具备用户。

 

[html] view
plain copy

 

  1. <div>  
  2.         <table id=”dg” class=”easyui-datagrid” style=”width: 600px; height: 350px” >  
  3.             <thead>  
  4.                 <tr>  
  5.                     <th data-options=”field:’UserID’,width:148,sortable:true”>ID</th>  
  6.                     <th data-options=”field:’UserName’,width:148,sortable:true”>姓名</th>  
  7.                     <th data-options=”field:’Sex’,width:148,sortable:true”>性别</th>  
  8.                 </tr>  
  9.             </thead>  
  10.   
  11.         </table>  
  12.     </div>  
  13.   
  14.     <!–datagrid基本设置–>  
  15.     <script type=”text/javascript”>  
  16.         $(function () {  
  17.             $(‘#dg’).datagrid({  
  18.                 title: ‘测试表格’,  
  19.                 url: “/EvaluationSituation/jsonTest?strUserName=呵呵”, //添加查询条件  
  20.                 pagination: true,//显示分页工具栏  
  21.                 fitColumns: true, //自动大小  
  22.   
  23.             });  
  24.         });  
  25.     </script>  

 

EasyUI 1

 

        然后我们在后台接受参数,并实行查询

 

[csharp] view
plain copy

 

  1. public JsonResult  jsonTest()  
  2.        {  
  3.            #region 制造假数据  
  4.            List<User> listUser = new List<User>();  
  5.   
  6.            listUser.Add(new User {   
  7.                UserID =”001″,  
  8.                UserName=”呵呵”,  
  9.                Sex =”男”  
  10.            });  
  11.            listUser.Add(new User  
  12.            {  
  13.                UserID = “002”,  
  14.                UserName = “哈哈”,  
  15.                Sex = “女”  
  16.            });   
  17.            listUser.Add(new User  
  18.            {  
  19.                UserID = “003”,  
  20.                UserName = “嘿嘿”,  
  21.                Sex = “男”  
  22.            });  
  23.            listUser.Add(new User  
  24.            {  
  25.                UserID = “004”,  
  26.                UserName = “嘻嘻”,  
  27.                Sex = “男”  
  28.            });  
  29.            listUser.Add(new User  
  30.            {  
  31.                UserID = “002”,  
  32.                UserName = “哈哈”,  
  33.                Sex = “女”  
  34.            });  
  35.            listUser.Add(new User  
  36.            {  
  37.                UserID = “003”,  
  38.                UserName = “嘿嘿”,  
  39.                Sex = “男”  
  40.            });  
  41.            listUser.Add(new User  
  42.            {  
  43.                UserID = “004”,  
  44.                UserName = “嘻嘻”,  
  45.                Sex = “男”  
  46.            });  
  47.            listUser.Add(new User  
  48.            {  
  49.                UserID = “002”,  
  50.                UserName = “哈哈”,  
  51.                Sex = “女”  
  52.            });  
  53.            listUser.Add(new User  
  54.            {  
  55.                UserID = “003”,  
  56.                UserName = “嘿嘿”,  
  57.                Sex = “男”  
  58.            });  
  59.            listUser.Add(new User  
  60.            {  
  61.                UserID = “004”,  
  62.                UserName = “嘻嘻”,  
  63.                Sex = “男”  
  64.            });  
  65.            listUser.Add(new User  
  66.            {  
  67.                UserID = “002”,  
  68.                UserName = “哈哈”,  
  69.                Sex = “女”  
  70.            });  
  71.            listUser.Add(new User  
  72.            {  
  73.                UserID = “003”,  
  74.                UserName = “嘿嘿”,  
  75.                Sex = “男”  
  76.            });  
  77.            listUser.Add(new User  
  78.            {  
  79.                UserID = “004”,  
  80.                UserName = “嘻嘻”,  
  81.                Sex = “男”  
  82.            });  
  83.            #endregion  
  84.   
  85.            string strUserName = Request[“strUserName”];//查询条件  
  86.            var pageIndex = int.Parse(Request[“page”]);//当前页  
  87.            var pageSize = int.Parse(Request[“rows”]);//页面行数    
  88.            var total = 0;  
  89.   
  90.            //首先获得符合该查询条件的毕竟记录条数  
  91.            total = listUser.Where(p => p.UserName != strUserName).Count();  
  92.   
  93.            //根据页号、页面大小以及询问条件查询时页应该显得的情节  
  94.            var listQuery = listUser.Where(p => p.UserName != strUserName)  //查询条件也:UserName不抵strUserName  
  95.                             .OrderBy(p => p.UserID)    //根据UserID进行升序排序  
  96.                             .Skip(pageSize * (pageIndex – 1))  //跳过记录面临的前面(pageSize * (pageIndex – 1))行,假如当前页为次页-pageIndex=2,每页显示10修数-pageSize=10,那么即便超过了记录中的前面10久数据,达到分页查询的功能  
  97.                             .Take(pageSize);   //取出pageSize条记录  
  98.   
  99.            var data = new  
  100.            {  
  101.                total,  
  102.                rows = listQuery  
  103.            };  
  104.   
  105.            //将数据易成Json格式  
  106.            JsonResult jsonUser = new JsonResult();  
  107.            jsonUser = Json(data);  
  108.   
  109.   
  110.            return jsonUser;  
  111.        }  

        然后我们就可以看见结果:

 

                                                 
 EasyUI 2

                                               
 EasyUI 3

 

 

 

       
分页查询是一个坏日常的事物,基本上只要有报表就待分页查询,所以这些东西我们或要控制。其中的拉姆达表达式,我们啊可以当VS中经过F12改至定义,多看看中措施的概念。