读书人

this解决方法

发布时间: 2012-10-16 09:57:37 作者: rapoo

this
public static PagedList<T> ToPagedList<T>
(
this IQueryable<T> allItems,
int pageIndex,
int pageSize
)
这种表示结构,该怎么解释,为什么把this IQueryable<T> allItems 写到参数里边?? 我知道 使用的时候可以 IQueryable<T>对象.ToPagedList(pageIndex,pageSize)


C# code
public static class PageLinqExtensions    {        public static PagedList<T> ToPagedList<T>            (                this IQueryable<T> allItems,                int pageIndex,                int pageSize            )        {            if (pageIndex < 1)                pageIndex = 1;            var itemIndex = (pageIndex-1) * pageSize;            var pageOfItems = allItems.Skip(itemIndex).Take(pageSize);            var totalItemCount = allItems.Count();            return new PagedList<T>(pageOfItems, pageIndex, pageSize, totalItemCount);        }    }


[解决办法]
这个叫“扩展方法”,C# 3.0新增语法,具体什么是扩展方法,可以自己MSDN下。

读书人网 >asp.net

热点推荐