Prechádzať zdrojové kódy

修正对比两个集合的bug

懒得勤快 3 rokov pred
rodič
commit
71b9c28feb

+ 4 - 4
Masuit.Tools.Abstractions/Extensions/BaseType/IEnumerableExtensions.cs

@@ -582,9 +582,9 @@ namespace Masuit.Tools
         /// <param name="key1Selector">对比因素属性</param>
         /// <param name="key2Selector">对比因素属性</param>
         /// <returns></returns>
-        public static (IEnumerable<T2> adds, IEnumerable<T1> remove, IEnumerable<T1> updates) CompareChanges<T1, T2>(this IEnumerable<T1> olds, IEnumerable<T2> news, Func<T1, object> key1Selector, Func<T2, object> key2Selector)
+        public static (List<T2> adds, List<T1> remove, List<T1> updates) CompareChanges<T1, T2>(this IEnumerable<T1> olds, IEnumerable<T2> news, Func<T1, object> key1Selector, Func<T2, object> key2Selector)
         {
-            return (news.Where(c => olds.All(m => key1Selector(m) != key2Selector(c))), olds.Where(m => news.All(c => key2Selector(c) != key1Selector(m))), olds.Where(m => news.Any(c => key1Selector(m) == key2Selector(c))));
+            return (news.Where(c => olds.All(m => key1Selector(m) != key2Selector(c))).ToList(), olds.Where(m => news.All(c => key2Selector(c) != key1Selector(m))).ToList(), olds.Where(m => news.Any(c => key1Selector(m) == key2Selector(c))).ToList());
         }
 
         /// <summary>
@@ -595,9 +595,9 @@ namespace Masuit.Tools
         /// <param name="news"></param>
         /// <param name="keySelector">对比因素属性</param>
         /// <returns></returns>
-        public static (IEnumerable<T> adds, IEnumerable<T> remove, IEnumerable<T> updates) CompareChanges<T>(this IEnumerable<T> olds, IEnumerable<T> news, Func<T, object> keySelector)
+        public static (List<T> adds, List<T> remove, List<T> updates) CompareChanges<T>(this IEnumerable<T> olds, IEnumerable<T> news, Func<T, object> keySelector)
         {
-            return (news.Where(c => olds.All(m => keySelector(m) != keySelector(c))), olds.Where(m => news.All(c => keySelector(c) != keySelector(m))), olds.Where(m => news.Any(c => keySelector(m) == keySelector(c))));
+            return (news.Where(c => olds.All(m => keySelector(m) != keySelector(c))).ToList(), olds.Where(m => news.All(c => keySelector(c) != keySelector(m))).ToList(), olds.Where(m => news.Any(c => keySelector(m) == keySelector(c))).ToList());
         }
     }
 }

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

@@ -4,7 +4,7 @@
     <LangVersion>latest</LangVersion>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <CodeAnalysisRuleSet />
-    <Version>2.4.5.2</Version>
+    <Version>2.4.5.3</Version>
     <Authors>懒得勤快</Authors>
     <Description>Masuit.Tools基础公共库,包含一些常用的操作类,大都是静态类,加密解密,反射操作,Excel简单导出,权重随机筛选算法,分布式短id,表达式树,linq扩展,文件压缩,多线程下载和FTP客户端,硬件信息,字符串扩展方法,日期时间扩展操作,中国农历,大文件拷贝,图像裁剪,验证码,断点续传,集合扩展等常用封装。</Description>
     <Copyright>懒得勤快,长空X</Copyright>
@@ -17,9 +17,9 @@
     <RepositoryType>Github</RepositoryType>
     <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
     <PackageRequireLicenseAcceptance>False</PackageRequireLicenseAcceptance>
-    <FileVersion>2.4.5.2</FileVersion>
+    <FileVersion>2.4.5.3</FileVersion>
     <Company>masuit.com</Company>
-    <AssemblyVersion>2.4.5.2</AssemblyVersion>
+    <AssemblyVersion>2.4.5.3</AssemblyVersion>
     <PackageLicenseUrl>https://github.com/ldqk/Masuit.Tools/blob/master/LICENSE</PackageLicenseUrl>
     <EmbedUntrackedSources>true</EmbedUntrackedSources>
     <IncludeSymbols>true</IncludeSymbols>

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

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

BIN
Masuit.Tools.Net45/Properties/AssemblyInfo.cs


+ 1 - 1
Masuit.Tools.Net45/package.nuspec

@@ -4,7 +4,7 @@
     <!--*-->
     <id>Masuit.Tools.Net45</id>
     <!--*-->
-    <version>2.4.5.2</version>
+    <version>2.4.5.3</version>
     <title>Masuit.Tools</title>
     <!--*-->
     <authors>懒得勤快</authors>

BIN
Masuit.Tools/Properties/AssemblyInfo.cs


+ 1 - 1
Masuit.Tools/package.nuspec

@@ -4,7 +4,7 @@
     <!--*-->
     <id>Masuit.Tools.Net</id>
     <!--*-->
-    <version>2.4.5.2</version>
+    <version>2.4.5.3</version>
     <title>Masuit.Tools</title>
     <!--*-->
     <authors>懒得勤快</authors>