瀏覽代碼

生成分页集合支持IEnumerable

懒得勤快 4 年之前
父節點
當前提交
1f47da0272

+ 3 - 3
Masuit.Tools.Abstractions/Masuit.Tools.Abstractions.csproj

@@ -7,7 +7,7 @@
     <LangVersion>9.0</LangVersion>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <CodeAnalysisRuleSet />
-    <Version>2.4.2</Version>
+    <Version>2.4.2.1</Version>
     <Authors>懒得勤快</Authors>
     <Description>Masuit.Tools基础公共库</Description>
     <Copyright>懒得勤快,长空X</Copyright>
@@ -20,9 +20,9 @@
     <RepositoryType>Github</RepositoryType>
     <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
     <PackageRequireLicenseAcceptance>False</PackageRequireLicenseAcceptance>
-    <FileVersion>2.4.2</FileVersion>
+    <FileVersion>2.4.2.1</FileVersion>
     <Company>masuit.com</Company>
-    <AssemblyVersion>2.4.2</AssemblyVersion>
+    <AssemblyVersion>2.4.2.1</AssemblyVersion>
     <PackageLicenseUrl>https://github.com/ldqk/Masuit.Tools/blob/master/LICENSE</PackageLicenseUrl>
     <EmbedUntrackedSources>true</EmbedUntrackedSources>
     <IncludeSymbols>true</IncludeSymbols>

+ 25 - 0
Masuit.Tools.Abstractions/Models/PagedList.cs

@@ -93,5 +93,30 @@ namespace Masuit.Tools.Models
             var list = query.Skip(size * (page - 1)).Take(size).ToList();
             return new PagedList<T>(list, page, size, totalCount);
         }
+
+        /// <summary>
+        /// 生成分页集合
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="query"></param>
+        /// <param name="page">当前页</param>
+        /// <param name="size">页大小</param>
+        /// <returns></returns>
+        public static PagedList<T> ToPagedList<T>(this IEnumerable<T> query, int page, int size)
+        {
+            var totalCount = query.Count();
+            if (page * size > totalCount)
+            {
+                page = (int)Math.Ceiling(totalCount / (size * 1.0));
+            }
+
+            if (page <= 0)
+            {
+                page = 1;
+            }
+
+            var list = query.Skip(size * (page - 1)).Take(size).ToList();
+            return new PagedList<T>(list, page, size, totalCount);
+        }
     }
 }

+ 3 - 3
Masuit.Tools.Core/Masuit.Tools.Core.csproj

@@ -20,10 +20,10 @@
         <UserSecretsId>830c282f-f7c1-42be-8651-4cd06ac8e73f</UserSecretsId>
         <RepositoryType>Github</RepositoryType>
         <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
-        <Version>2.4.2</Version>
-        <FileVersion>2.4.2</FileVersion>
+        <Version>2.4.2.1</Version>
+        <FileVersion>2.4.2.1</FileVersion>
         <Company>masuit.com</Company>
-        <AssemblyVersion>2.4.2</AssemblyVersion>
+        <AssemblyVersion>2.4.2.1</AssemblyVersion>
         <Authors>懒得勤快X</Authors>
         <RepositoryUrl>https://github.com/ldqk/Masuit.Tools</RepositoryUrl>
         <EmbedUntrackedSources>true</EmbedUntrackedSources>

二進制
Masuit.Tools/Properties/AssemblyInfo.cs


+ 1 - 1
Masuit.Tools/package.nuspec

@@ -4,7 +4,7 @@
     <!--*-->
     <id>Masuit.Tools.Net</id>
     <!--*-->
-    <version>2.4.2</version>
+    <version>2.4.2.1</version>
     <title>Masuit.Tools</title>
     <!--*-->
     <authors>masuit.com</authors>