diff --git a/Directory.Build.props b/Directory.Build.props
index 53b4d68..1d748e5 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,5 +1,5 @@
- 2.4.2
+ 2.4.3
\ No newline at end of file
diff --git a/TakasakiStudio.Lina.Utils/Extensions/QueryableExtensions.cs b/TakasakiStudio.Lina.Utils/Extensions/QueryableExtensions.cs
index ac9576d..44f6cfd 100644
--- a/TakasakiStudio.Lina.Utils/Extensions/QueryableExtensions.cs
+++ b/TakasakiStudio.Lina.Utils/Extensions/QueryableExtensions.cs
@@ -11,11 +11,13 @@ public static class QueryableExtensions
/// Query execution
/// Current page
/// Page size
+ /// Max page size
/// Model type
/// Query execution
- public static IQueryable Paginate(this IQueryable query, int page, int pageSize = 20)
+ public static IQueryable Paginate(this IQueryable query, int page, int pageSize = 20, int? maxPageSize = null)
{
- if (page == 0) page = 1;
+ if (page == 0)
+ page = 1;
pageSize = pageSize switch
{
@@ -23,6 +25,9 @@ public static IQueryable Paginate(this IQueryable query, int page, int
_ => pageSize
};
+ if (pageSize > maxPageSize)
+ pageSize = maxPageSize.Value;
+
return query.Skip((page - 1) * pageSize).Take(pageSize);
}
}