🚀增加分页模型分页及示例

This commit is contained in:
KaneLeung
2021-03-30 11:09:09 +08:00
parent cad97b37ba
commit 0002cec8b4
8 changed files with 203 additions and 0 deletions

View File

@ -2136,6 +2136,13 @@
<param name="pageSize">每页多少</param>
<returns></returns>
</member>
<member name="M:FreeSql.ISelect0`2.Page(FreeSql.Internal.Model.BasePagingInfo)">
<summary>
分页
</summary>
<param name="pagingInfo">分页信息</param>
<returns></returns>
</member>
<member name="M:FreeSql.ISelect0`2.Distinct">
<summary>
查询数据前,去重
@ -3976,6 +3983,26 @@
<param name="commandTimeout"></param>
<returns></returns>
</member>
<member name="T:FreeSql.Internal.Model.BasePagingInfo">
<summary>
分页信息
</summary>
</member>
<member name="P:FreeSql.Internal.Model.BasePagingInfo.PageNumber">
<summary>
第几页从1开始
</summary>
</member>
<member name="P:FreeSql.Internal.Model.BasePagingInfo.PageSize">
<summary>
每页多少
</summary>
</member>
<member name="P:FreeSql.Internal.Model.BasePagingInfo.Count">
<summary>
查询的记录数量
</summary>
</member>
<member name="P:FreeSql.Internal.Model.BatchProgressStatus`1.Data">
<summary>
当前操作的数据

View File

@ -402,6 +402,13 @@ namespace FreeSql
/// <returns></returns>
TSelect Page(int pageNumber, int pageSize);
/// <summary>
/// 分页
/// </summary>
/// <param name="pagingInfo">分页信息</param>
/// <returns></returns>
TSelect Page(BasePagingInfo pagingInfo);
/// <summary>
/// 查询数据前,去重
/// <para>

View File

@ -319,6 +319,13 @@ namespace FreeSql.Internal.CommonProvider
return this.Limit(pageSize) as TSelect;
}
public TSelect Page(BasePagingInfo pagingInfo)
{
pagingInfo.Count = this.Count();
this.Skip(Math.Max(0, pagingInfo.PageNumber - 1) * pagingInfo.PageSize);
return this.Limit(pagingInfo.PageSize) as TSelect;
}
public TSelect Skip(int offset)
{
_skip = offset;

View File

@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace FreeSql.Internal.Model
{
/// <summary>
/// 分页信息
/// </summary>
public class BasePagingInfo
{
/// <summary>
/// 第几页从1开始
/// </summary>
public int PageNumber { get; set; }
/// <summary>
/// 每页多少
/// </summary>
public int PageSize { get; set; }
/// <summary>
/// 查询的记录数量
/// </summary>
public long Count { get; set; }
}
}