欢迎光临成都祈钰瑶科技有限公司网站!祝您生活愉快!
热线电话: 18982081108
✕

成都服务器托管,成都GPU服务器租用,成都高防BGP宽带租用,成都机柜租用托管

Linq实现分页简单描述

学习LINQ时,经常会遇到分页问题,这里将介绍用Linq实现分页来解决分页问题。

成都创新互联公司是专业的龙山网站建设公司,龙山接单;提供网站制作、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行龙山网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

LINQ是Language Integrated Query (语言集成查询)。当我们要对数据库表进行查询的时候,我们一定会编写"select * from sometable where 的语句。好,那我们现在根据LINQ的语法,完全可以将我们熟悉的SQL中像"select","from","where"等语句在.NET Framework环境中顺利使用并且大大提高开发的效率。

以下是模拟分页的Linq方法! 用Linq实现分页,有个实现IEnumerable接口的数组。

 
 
 
  1. string[] Array = { "Hjiang", "Hwang", "Wange", "Hwan", "Hcheng", "Hhoho" }; 

封装分页的方法

 
 
 
  1. /// <summary> 
  2. /// 分页  
  3. ///  summary> 
  4. /// <typeparam name="T"> typeparam> 
  5. /// <param name="List">实现IEnumerable param> 
  6. /// <param name="FunWhere">delegate检索条件 param> 
  7. /// <param name="FunOrder">delegate排序 param> 
  8. /// <param name="PageSize">每页显示数 param> 
  9. /// <param name="PageIndex">当前页码 param> 
  10. /// <returns> returns> 
  11. static IEnumerable<T> GetIenumberable<T>(IEnumerable<T> List,Func<T, 
    bool> FunWhere,Func<T,string> FunOrder, int PageSize, int PageIndex)  
  12. {  
  13. var rance = List.Where(FunWhere).OrderByDescending(FunOrder).
    Select(t => t).Skip((PageIndex - 1) * PageSize).Take(PageSize);  
  14. return rance;  
  15. } 

然后我们对数组进行模拟分页

以下读取第一页

 
 
 
  1. var sArray = GetIenumberable<String>
    (Array, r => r.StartsWith("H"), r => r, 1, 1);  
  2. foreach (var s in sArray)  
  3. {  
  4. Console.WriteLine(s);  
  5. } 

第二页

 
 
 
  1. var sArray = GetIenumberable<String>
    (Array, r => r.StartsWith("H"), r => r, 1, 2);  
  2. foreach (var s in sArray)  
  3. {  
  4. Console.WriteLine(s);  
  5. } 

以上介绍用Linq实现分页。