c# List数据分页
c# List数据分页
#region List分页处理
/// <summary>
/// List分页处理
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="_list"></param>
/// <param name="PageIndex"></param>
/// <param name="PageSize"></param>
/// <returns></returns>
public static List<T> SplitList<T>(List<T> _list, int PageIndex, int PageSize)
{
int _PageIndex = PageIndex == 0 ? 1 : PageIndex;
int _PageSize = PageSize == 0 ? 20 : PageSize;
int PageConut = (int)Math.Ceiling(Convert.ToDecimal(_list.Count) / _PageSize);
if (PageConut >= _PageIndex)
{
List<T> list = new List<T>();
list = _list.Skip((_PageIndex - 1) * _PageSize).Take(_PageSize).ToList();
return list;
}
else
return _list;
}
#endregion
List循环分页处理
#region List循环分页处理
/// <summary>
/// List分页处理
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="_list"></param>
/// <param name="PageIndex"></param>
/// <param name="PageSize"></param>
/// <returns></returns>
public static void SplitList<T>(List<T> _list, int PageIndex, int PageSize)
{
int _PageIndex = PageIndex == 0 ? 1 : PageIndex;
int _PageSize = PageSize == 0 ? 20 : PageSize;
int PageConut = (int)Math.Ceiling(Convert.ToDecimal(_list.Count) / _PageSize);
if (PageConut >= _PageIndex)
{
for(int i=0,i<PageConut,i++)
List<T> list = new List<T>();
list = _list.Skip(PageConut * _PageSize).Take(_PageSize).ToList();
//your code list
}
else
{
//your code _list
}
}
#endregion