diff --git a/Directory.Build.props b/Directory.Build.props index 66731acd24..df9cfef34e 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -41,7 +41,13 @@ $(NoWarn);SYSLIB0011 true + Condition="$(MSBuildProjectName.Contains('Tests')) == 'true'">true + + + + + + net10.0 @@ -49,26 +55,14 @@ net8.0 - - - - - net7.0 - - - - - - net6.0 - + Condition="$(Configuration.Contains('NET10')) == 'false' AND $(Configuration.Contains('NET8')) == 'false'"> Debug $(TargetFrameworks) $(DO_TargetFrameworks) - net8.0;net7.0;net6.0 + net8.0;net10.0 @@ -100,7 +94,7 @@ $(MSBuildProjectExtensionsPath)project.assets.json $(MSBuildProjectExtensionsPath)$(TargetFramework)\$(MSBuildProjectName).assets.cache $(SolutionDir)Orm\Orm.snk - $(NoWarn);NETSDK1138 + $(NoWarn);NETSDK1138 diff --git a/Extensions/TestCommon/TestCommon.csproj b/Extensions/TestCommon/TestCommon.csproj index 38620958ba..7ce11676c5 100644 --- a/Extensions/TestCommon/TestCommon.csproj +++ b/Extensions/TestCommon/TestCommon.csproj @@ -1,26 +1,29 @@ - + - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 true $(ExtensionsKeyFile) - - + + + + + - - + + + + + - - - diff --git a/Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj b/Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj index 7185fd1a49..7781507029 100644 --- a/Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj +++ b/Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj @@ -1,7 +1,7 @@ - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Extensions/Xtensive.Orm.BulkOperations/Internals/Operation.cs b/Extensions/Xtensive.Orm.BulkOperations/Internals/Operation.cs index 168ed0d643..b6bffee550 100644 --- a/Extensions/Xtensive.Orm.BulkOperations/Internals/Operation.cs +++ b/Extensions/Xtensive.Orm.BulkOperations/Internals/Operation.cs @@ -68,11 +68,7 @@ protected void EnsureTransactionIsStarted() public QueryTranslationResult GetRequest(IQueryable query) => QueryBuilder.TranslateQuery(query); public QueryTranslationResult GetRequest(Type type, IQueryable query) => -#if NET8_0_OR_GREATER (QueryTranslationResult) WellKnownMembers.TranslateQueryMethod.CachedMakeGenericMethodInvoker(type).Invoke(QueryBuilder, query); -#else - (QueryTranslationResult) WellKnownMembers.TranslateQueryMethod.CachedMakeGenericMethod(type).Invoke(QueryBuilder, new object[] {query}); -#endif public TypeInfo GetTypeInfo(Type entityType) => Session.Domain.Model.Hierarchies.SelectMany(a => a.Types).Single(a => a.UnderlyingType == entityType); diff --git a/Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj b/Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj index 3497eea5c3..51105c16cc 100644 --- a/Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj +++ b/Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.BulkOperations diff --git a/Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj b/Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj index 7bf1168532..894765ab10 100644 --- a/Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj +++ b/Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj @@ -1,16 +1,23 @@ - + - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 + + + + + + + + + + - - - diff --git a/Extensions/Xtensive.Orm.Localization/Configuration/Elements/ConfigurationSection.cs b/Extensions/Xtensive.Orm.Localization/Configuration/Elements/ConfigurationSection.cs index 8349378aed..0d0a133fd3 100644 --- a/Extensions/Xtensive.Orm.Localization/Configuration/Elements/ConfigurationSection.cs +++ b/Extensions/Xtensive.Orm.Localization/Configuration/Elements/ConfigurationSection.cs @@ -14,13 +14,6 @@ namespace Xtensive.Orm.Localization.Configuration /// public class ConfigurationSection : System.Configuration.ConfigurationSection { - /// - /// Gets default section name for security configuration. - /// Value is "Xtensive.Orm.Localization". - /// - [Obsolete("Use Localization.DefaultSectionName instead.")] - public static readonly string DefaultSectionName = "Xtensive.Orm.Localization"; - private const string DefaultCultureElementName = "defaultCulture"; /// diff --git a/Extensions/Xtensive.Orm.Localization/Configuration/LocalizationConfiguration.cs b/Extensions/Xtensive.Orm.Localization/Configuration/LocalizationConfiguration.cs index 6b84a40dd2..47166c7a34 100644 --- a/Extensions/Xtensive.Orm.Localization/Configuration/LocalizationConfiguration.cs +++ b/Extensions/Xtensive.Orm.Localization/Configuration/LocalizationConfiguration.cs @@ -79,7 +79,7 @@ public static LocalizationConfiguration Load() /// public static LocalizationConfiguration Load(string sectionName) { - var section = (ConfigurationSection) ConfigurationManager.GetSection(sectionName); + var section = (ConfigurationSection) System.Configuration.ConfigurationManager.GetSection(sectionName); return GetConfigurationFromSection(section); } diff --git a/Extensions/Xtensive.Orm.Localization/Xtensive.Orm.Localization.csproj b/Extensions/Xtensive.Orm.Localization/Xtensive.Orm.Localization.csproj index 7bf1dfb1e2..0990c6eeaf 100644 --- a/Extensions/Xtensive.Orm.Localization/Xtensive.Orm.Localization.csproj +++ b/Extensions/Xtensive.Orm.Localization/Xtensive.Orm.Localization.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Localization @@ -29,15 +29,15 @@ - - + + + + - - - - - - + + + + \ No newline at end of file diff --git a/Extensions/Xtensive.Orm.Logging.NLog.Tests/Xtensive.Orm.Logging.NLog.Tests.csproj b/Extensions/Xtensive.Orm.Logging.NLog.Tests/Xtensive.Orm.Logging.NLog.Tests.csproj index 28270cc639..c934ea76f4 100644 --- a/Extensions/Xtensive.Orm.Logging.NLog.Tests/Xtensive.Orm.Logging.NLog.Tests.csproj +++ b/Extensions/Xtensive.Orm.Logging.NLog.Tests/Xtensive.Orm.Logging.NLog.Tests.csproj @@ -1,7 +1,7 @@ - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Extensions/Xtensive.Orm.Logging.NLog/Xtensive.Orm.Logging.NLog.csproj b/Extensions/Xtensive.Orm.Logging.NLog/Xtensive.Orm.Logging.NLog.csproj index f565618932..3b120bfc81 100644 --- a/Extensions/Xtensive.Orm.Logging.NLog/Xtensive.Orm.Logging.NLog.csproj +++ b/Extensions/Xtensive.Orm.Logging.NLog/Xtensive.Orm.Logging.NLog.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Logging.NLog diff --git a/Extensions/Xtensive.Orm.Logging.log4net.Tests/Xtensive.Orm.Logging.log4net.Tests.csproj b/Extensions/Xtensive.Orm.Logging.log4net.Tests/Xtensive.Orm.Logging.log4net.Tests.csproj index 2d71b07155..0b979b0b3b 100644 --- a/Extensions/Xtensive.Orm.Logging.log4net.Tests/Xtensive.Orm.Logging.log4net.Tests.csproj +++ b/Extensions/Xtensive.Orm.Logging.log4net.Tests/Xtensive.Orm.Logging.log4net.Tests.csproj @@ -1,7 +1,7 @@ - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Extensions/Xtensive.Orm.Logging.log4net/Xtensive.Orm.Logging.log4net.csproj b/Extensions/Xtensive.Orm.Logging.log4net/Xtensive.Orm.Logging.log4net.csproj index 6a48ba38d4..befbcc7f77 100644 --- a/Extensions/Xtensive.Orm.Logging.log4net/Xtensive.Orm.Logging.log4net.csproj +++ b/Extensions/Xtensive.Orm.Logging.log4net/Xtensive.Orm.Logging.log4net.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Logging.log4net diff --git a/Extensions/Xtensive.Orm.Reprocessing.Tests/Xtensive.Orm.Reprocessing.Tests.csproj b/Extensions/Xtensive.Orm.Reprocessing.Tests/Xtensive.Orm.Reprocessing.Tests.csproj index bf44420f9a..310ca954b7 100644 --- a/Extensions/Xtensive.Orm.Reprocessing.Tests/Xtensive.Orm.Reprocessing.Tests.csproj +++ b/Extensions/Xtensive.Orm.Reprocessing.Tests/Xtensive.Orm.Reprocessing.Tests.csproj @@ -1,16 +1,23 @@ - + - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 + + + + + + + + + + - - - diff --git a/Extensions/Xtensive.Orm.Reprocessing/Configuration/ConfigurationSection.cs b/Extensions/Xtensive.Orm.Reprocessing/Configuration/ConfigurationSection.cs index 6b8d0d2718..e8cfcdb8c4 100644 --- a/Extensions/Xtensive.Orm.Reprocessing/Configuration/ConfigurationSection.cs +++ b/Extensions/Xtensive.Orm.Reprocessing/Configuration/ConfigurationSection.cs @@ -9,13 +9,6 @@ namespace Xtensive.Orm.Reprocessing.Configuration /// public class ConfigurationSection : System.Configuration.ConfigurationSection { - /// - /// Gets default section name for reprocessing configuration. - /// Value is "Xtensive.Orm.Reprocessing". - /// - [Obsolete("Use ReprocessingConfiguration.DefaultSectionName instead")] - public static readonly string DefaultSectionName = "Xtensive.Orm.Reprocessing"; - /// /// Gets or sets default transaction open mode. /// diff --git a/Extensions/Xtensive.Orm.Reprocessing/Configuration/ReprocessingConfiguration.cs b/Extensions/Xtensive.Orm.Reprocessing/Configuration/ReprocessingConfiguration.cs index 6e7adbc458..c13d81d5be 100644 --- a/Extensions/Xtensive.Orm.Reprocessing/Configuration/ReprocessingConfiguration.cs +++ b/Extensions/Xtensive.Orm.Reprocessing/Configuration/ReprocessingConfiguration.cs @@ -84,7 +84,7 @@ public static ReprocessingConfiguration Load() /// The reprocessing configuration. public static ReprocessingConfiguration Load(string sectionName) { - var section = (ConfigurationSection) ConfigurationManager.GetSection(sectionName); + var section = (ConfigurationSection) System.Configuration.ConfigurationManager.GetSection(sectionName); return GetConfigurationFromSection(section); } diff --git a/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj b/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj index ea3f6294e5..8ec07f5eb2 100644 --- a/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj +++ b/Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Reprocessing @@ -15,15 +15,15 @@ ReadMe.md - - + + + + - - - - - - + + + + diff --git a/Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj b/Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj index e19fe7a16a..f9c775a92d 100644 --- a/Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj +++ b/Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj @@ -1,16 +1,23 @@ - + - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 + + + + + + + + + + - - - diff --git a/Extensions/Xtensive.Orm.Security/Configuration/Elements/ConfigurationSection.cs b/Extensions/Xtensive.Orm.Security/Configuration/Elements/ConfigurationSection.cs index 86899f68d4..dc099a4234 100644 --- a/Extensions/Xtensive.Orm.Security/Configuration/Elements/ConfigurationSection.cs +++ b/Extensions/Xtensive.Orm.Security/Configuration/Elements/ConfigurationSection.cs @@ -14,13 +14,6 @@ namespace Xtensive.Orm.Security.Configuration /// public class ConfigurationSection : System.Configuration.ConfigurationSection { - /// - /// Gets default section name for security configuration. - /// Value is "Xtensive.Orm.Security". - /// - [Obsolete("Use SecurityConfiguration.DefaultSectionName instead")] - public static readonly string DefaultSectionName = "Xtensive.Orm.Security"; - private const string HashingServiceElementName = "hashingService"; private const string AuthenticationServiceElementName = "authenticationService"; diff --git a/Extensions/Xtensive.Orm.Security/Configuration/SecurityConfiguration.cs b/Extensions/Xtensive.Orm.Security/Configuration/SecurityConfiguration.cs index 2ecd46f8cb..ececb9ab64 100644 --- a/Extensions/Xtensive.Orm.Security/Configuration/SecurityConfiguration.cs +++ b/Extensions/Xtensive.Orm.Security/Configuration/SecurityConfiguration.cs @@ -83,7 +83,7 @@ public static SecurityConfiguration Load() /// public static SecurityConfiguration Load(string sectionName) { - var section = (ConfigurationSection) ConfigurationManager.GetSection(sectionName); + var section = (ConfigurationSection) System.Configuration.ConfigurationManager.GetSection(sectionName); return GetConfigurationFromSection(section); } diff --git a/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj b/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj index 55e7646a93..a6609618f7 100644 --- a/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj +++ b/Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Security @@ -16,15 +16,15 @@ ReadMe.md - - + + + + - - - - - - + + + + diff --git a/Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj b/Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj index 5e1801f26f..a8a2335ac0 100644 --- a/Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj +++ b/Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj @@ -4,7 +4,7 @@ false true ..\Extensions.snk - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj b/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj index e4a9943dc3..cb619eb05f 100644 --- a/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj +++ b/Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Tracking @@ -15,11 +15,11 @@ ReadMe.md - - + + - - + + diff --git a/Extensions/Xtensive.Orm.Web.Tests/Xtensive.Orm.Web.Tests.csproj b/Extensions/Xtensive.Orm.Web.Tests/Xtensive.Orm.Web.Tests.csproj index 72f1396235..82f68167d4 100644 --- a/Extensions/Xtensive.Orm.Web.Tests/Xtensive.Orm.Web.Tests.csproj +++ b/Extensions/Xtensive.Orm.Web.Tests/Xtensive.Orm.Web.Tests.csproj @@ -4,7 +4,7 @@ false true $(ExtensionsKeyFile) - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj b/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj index 6048375824..c59111890a 100644 --- a/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj +++ b/Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive.Orm.Web @@ -20,11 +20,11 @@ . - - + + - - + + diff --git a/MSBuild/DataObjects.Net.targets b/MSBuild/DataObjects.Net.targets index f190b033fe..4cf48739d4 100644 --- a/MSBuild/DataObjects.Net.targets +++ b/MSBuild/DataObjects.Net.targets @@ -12,9 +12,8 @@ $(CompileDependsOn);XtensiveOrmBuild $(MSBuildThisFileDirectory) $(XtensiveOrmPath)\ - net8.0 - net7.0 - net6.0 + net10.0 + net8.0 $(XtensiveOrmPath)tools\weaver\$(XtensiveWeaverFramework)\Xtensive.Orm.Weaver.dll $(XtensiveOrmBuildDependsOn) diff --git a/Orm.sln b/Orm.sln index 9675e2efa6..c3c4f535cc 100644 --- a/Orm.sln +++ b/Orm.sln @@ -90,518 +90,390 @@ Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU - Debug-NET6|Any CPU = Debug-NET6|Any CPU - Debug-NET7|Any CPU = Debug-NET7|Any CPU Debug-NET8|Any CPU = Debug-NET8|Any CPU - Release-NET6|Any CPU = Release-NET6|Any CPU - Release-NET7|Any CPU = Release-NET7|Any CPU + Debug-NET10|Any CPU = Debug-NET10|Any CPU Release-NET8|Any CPU = Release-NET8|Any CPU + Release-NET10|Any CPU = Release-NET10|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug|Any CPU.Build.0 = Debug|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {064D5B81-8D54-4F2F-9649-952F71E27E14}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release|Any CPU.ActiveCfg = Release|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release|Any CPU.Build.0 = Release|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {064D5B81-8D54-4F2F-9649-952F71E27E14}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release|Any CPU.ActiveCfg = Release|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release|Any CPU.Build.0 = Release|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {4E5C9208-426B-4536-AF7C-994C07E83FFA}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {4A985241-6698-47AA-A9DD-F3847600D542}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Release|Any CPU.ActiveCfg = Release|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Release|Any CPU.Build.0 = Release|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {4A985241-6698-47AA-A9DD-F3847600D542}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {411F1ECB-053D-470A-9B75-49D715B440D6}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Release|Any CPU.ActiveCfg = Release|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Release|Any CPU.Build.0 = Release|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {411F1ECB-053D-470A-9B75-49D715B440D6}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug|Any CPU.Build.0 = Debug|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release|Any CPU.ActiveCfg = Release|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release|Any CPU.Build.0 = Release|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {36F889C0-F5D9-43DF-9E6E-D18C97673973}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release|Any CPU.ActiveCfg = Release|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release|Any CPU.Build.0 = Release|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {E6268FB3-D38A-4849-A43D-CB0FF7B67E60}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release|Any CPU.ActiveCfg = Release|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release|Any CPU.Build.0 = Release|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {C9B5BFED-85BC-47AE-8872-0BA97AF7B8B9}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {CB5E5E27-C723-494D-B288-036267823D28}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Release|Any CPU.ActiveCfg = Release|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Release|Any CPU.Build.0 = Release|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {CB5E5E27-C723-494D-B288-036267823D28}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release|Any CPU.ActiveCfg = Release|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release|Any CPU.Build.0 = Release|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {38F31CBB-034B-4231-91BE-D7D24C8A20F9}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug|Any CPU.Build.0 = Debug|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release|Any CPU.ActiveCfg = Release|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release|Any CPU.Build.0 = Release|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {53CB563A-BE93-4061-BDB3-AC3B69093A90}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release|Any CPU.ActiveCfg = Release|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release|Any CPU.Build.0 = Release|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {6CA1FDE2-ECBA-4580-97C3-A00B707558DB}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release|Any CPU.ActiveCfg = Release|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release|Any CPU.Build.0 = Release|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {DC44D096-DF24-41EC-9841-07F33E0A8EA3}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release|Any CPU.ActiveCfg = Release|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release|Any CPU.Build.0 = Release|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {1E0545D6-D979-48E0-A311-064BEDCE5A62}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {BA58CD9C-139B-41AB-915D-962765DFADBA}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release|Any CPU.ActiveCfg = Release|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release|Any CPU.Build.0 = Release|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {BA58CD9C-139B-41AB-915D-962765DFADBA}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {6E052601-9E0C-473D-A617-AD74DED24DC0}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release|Any CPU.ActiveCfg = Release|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release|Any CPU.Build.0 = Release|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {6E052601-9E0C-473D-A617-AD74DED24DC0}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {CE6BC11C-E785-4F10-A945-2416FD001689}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Release|Any CPU.ActiveCfg = Release|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Release|Any CPU.Build.0 = Release|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {CE6BC11C-E785-4F10-A945-2416FD001689}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {48827567-3991-4767-BED5-C76CAD47628E}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Release|Any CPU.ActiveCfg = Release|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Release|Any CPU.Build.0 = Release|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {48827567-3991-4767-BED5-C76CAD47628E}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release|Any CPU.ActiveCfg = Release|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release|Any CPU.Build.0 = Release|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {9CB81088-CF8A-400C-B80A-2D9782ED5B10}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release|Any CPU.ActiveCfg = Release|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release|Any CPU.Build.0 = Release|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {5E809296-02AA-4657-9FC1-CE0E0828B2B5}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release|Any CPU.ActiveCfg = Release|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release|Any CPU.Build.0 = Release|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {0AB4E2E3-9F74-4CB9-A25D-5C8FD38D9291}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {23550452-235D-4413-952B-BB8A45CAF8B1}.Debug-NET10|Any CPU.Build.0 = Debug-NET0|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Release|Any CPU.ActiveCfg = Release|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Release|Any CPU.Build.0 = Release|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {23550452-235D-4413-952B-BB8A45CAF8B1}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug|Any CPU.Build.0 = Debug|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release|Any CPU.ActiveCfg = Release|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release|Any CPU.Build.0 = Release|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {643D0EC3-D15E-4061-A3B7-EBB54EEB3069}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {2481997F-AC95-43B2-8A4E-0210E50387D5}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release|Any CPU.ActiveCfg = Release|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release|Any CPU.Build.0 = Release|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {2481997F-AC95-43B2-8A4E-0210E50387D5}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release|Any CPU.ActiveCfg = Release|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release|Any CPU.Build.0 = Release|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {04580B17-B4FC-41A8-8ABC-336822F4ADB9}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {6CBBB146-851F-49A6-88EC-01FFE455815B}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release|Any CPU.ActiveCfg = Release|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release|Any CPU.Build.0 = Release|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET10|Any CPU.ActiveCfg = Release-NET0|Any CPU + {6CBBB146-851F-49A6-88EC-01FFE455815B}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release|Any CPU.ActiveCfg = Release|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release|Any CPU.Build.0 = Release|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {3AC7C076-26BA-4185-A0FC-2B97D7AF48D9}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release|Any CPU.ActiveCfg = Release|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release|Any CPU.Build.0 = Release|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {15CC7358-3A5B-4146-A5CB-78DAE75E88E6}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release|Any CPU.ActiveCfg = Release|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release|Any CPU.Build.0 = Release|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {8B265DE5-7D83-41BF-8C87-D802325D2DA5}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug|Any CPU.Build.0 = Debug|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {75B3DB45-3055-4A22-854A-BD271D5E4218}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release|Any CPU.ActiveCfg = Release|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release|Any CPU.Build.0 = Release|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {75B3DB45-3055-4A22-854A-BD271D5E4218}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Debug|Any CPU.Build.0 = Debug|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {45000ADE-F647-4171-A91A-428CDF682603}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Release|Any CPU.ActiveCfg = Release|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Release|Any CPU.Build.0 = Release|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {45000ADE-F647-4171-A91A-428CDF682603}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU + {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU + {2CC55F3E-8EA5-4305-8716-D5B944120F82}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET6|Any CPU.ActiveCfg = Debug-NET6|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET6|Any CPU.Build.0 = Debug-NET6|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET7|Any CPU.ActiveCfg = Debug-NET7|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET7|Any CPU.Build.0 = Debug-NET7|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET8|Any CPU.ActiveCfg = Debug-NET8|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET8|Any CPU.Build.0 = Debug-NET8|Any CPU + {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET10|Any CPU.ActiveCfg = Debug-NET10|Any CPU + {A68C90C1-AD82-40FD-A18D-F04923514743}.Debug-NET10|Any CPU.Build.0 = Debug-NET10|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Release|Any CPU.ActiveCfg = Release|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Release|Any CPU.Build.0 = Release|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET6|Any CPU.ActiveCfg = Release-NET6|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET6|Any CPU.Build.0 = Release-NET6|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET7|Any CPU.ActiveCfg = Release-NET7|Any CPU - {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET7|Any CPU.Build.0 = Release-NET7|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET8|Any CPU.ActiveCfg = Release-NET8|Any CPU {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET8|Any CPU.Build.0 = Release-NET8|Any CPU + {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET10|Any CPU.ActiveCfg = Release-NET10|Any CPU + {A68C90C1-AD82-40FD-A18D-F04923514743}.Release-NET10|Any CPU.Build.0 = Release-NET10|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj b/Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj index cc0f27b83e..62aae90450 100644 --- a/Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj +++ b/Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive @@ -25,7 +25,7 @@ - + diff --git a/Orm/Xtensive.Orm.Manual/Xtensive.Orm.Manual.csproj b/Orm/Xtensive.Orm.Manual/Xtensive.Orm.Manual.csproj index e952d36f93..0bc4165ecf 100644 --- a/Orm/Xtensive.Orm.Manual/Xtensive.Orm.Manual.csproj +++ b/Orm/Xtensive.Orm.Manual/Xtensive.Orm.Manual.csproj @@ -2,7 +2,7 @@ true false - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj b/Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj index 1f78ab8297..8e6f04181e 100644 --- a/Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj +++ b/Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive @@ -39,8 +39,8 @@ - - + + diff --git a/Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj b/Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj index 4222822d6a..f873536030 100644 --- a/Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj +++ b/Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/PostgreSqlHelper.cs b/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/PostgreSqlHelper.cs index 8a58f739f8..76c088d9df 100644 --- a/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/PostgreSqlHelper.cs +++ b/Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/PostgreSqlHelper.cs @@ -21,11 +21,7 @@ internal static NpgsqlInterval CreateNativeIntervalFromTimeSpan(in TimeSpan time var days = timeSpan.Days; var timeTicks = ticks - (days * TimeSpan.TicksPerDay); -#if NET7_0_OR_GREATER var microseconds = timeTicks / TimeSpan.TicksPerMicrosecond; -#else - var microseconds = timeTicks / 10L; // same as TimeSpan.TicksPerMicrosecond available in .NET7+ -#endif // no months! return new NpgsqlInterval(0, days, microseconds); } @@ -43,11 +39,7 @@ internal static TimeSpan ResurrectTimeSpanFromNpgsqlInterval(in NpgsqlInterval n : npgsqlInterval.Days; var ticksOfDays = days * TimeSpan.TicksPerDay; -#if NET7_0_OR_GREATER var overallTicks = ticksOfDays + (npgsqlInterval.Time * TimeSpan.TicksPerMicrosecond); -#else - var overallTicks = ticksOfDays + (npgsqlInterval.Time * 10); //same as TimeSpan.TicksPerMicrosecond available in .NET7+ -#endif return TimeSpan.FromTicks(overallTicks); } @@ -115,18 +107,7 @@ public static TimeZoneInfo GetTimeZoneInfoForServerTimeZone(string connectionTim private static bool TryFindSystemTimeZoneById(string id, out TimeZoneInfo timeZoneInfo) { -#if NET8_0_OR_GREATER return TimeZoneInfo.TryFindSystemTimeZoneById(id, out timeZoneInfo); -#else - try { - timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById(id); - return true; - } - catch { - timeZoneInfo = null; - return false; - } -#endif } } } diff --git a/Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj b/Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj index 68993ea018..c0f6771846 100644 --- a/Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj +++ b/Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive @@ -25,7 +25,7 @@ - + diff --git a/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj b/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj index e3305af605..bbc5adb95e 100644 --- a/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj +++ b/Orm/Xtensive.Orm.SqlServer/Xtensive.Orm.SqlServer.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive @@ -25,7 +25,7 @@ - + diff --git a/Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj b/Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj index a1f4f229e8..61c416071d 100644 --- a/Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj +++ b/Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj @@ -2,7 +2,7 @@ true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.Tests.Core/DotNetFramework/AllocationTest.cs b/Orm/Xtensive.Orm.Tests.Core/DotNetFramework/AllocationTest.cs index 3a4dacdac0..2f60cc2bb1 100644 --- a/Orm/Xtensive.Orm.Tests.Core/DotNetFramework/AllocationTest.cs +++ b/Orm/Xtensive.Orm.Tests.Core/DotNetFramework/AllocationTest.cs @@ -92,9 +92,6 @@ private void TestClassAllocation(double speedFactor) // Warmup int iterations = 100; AllocateClass_SlimObject(iterations); -#if !NET8_0_OR_GREATER - AllocateClass_SlimObject_ByFormatterServices(iterations); -#endif AllocateClass_FinalizableSlimObject(iterations); AllocateClass_InheritedObject3(iterations); AllocateClass(iterations); @@ -112,11 +109,6 @@ private void TestClassAllocation(double speedFactor) using (new Measurement("SlimObject", MeasurementOptions.Log, iterations)) AllocateClass_SlimObject(iterations); TestHelper.CollectGarbage(); -#if !NET8_0_OR_GREATER - using (new Measurement("SlimObject (using FormatterServices)", MeasurementOptions.Log, iterations)) - AllocateClass_SlimObject_ByFormatterServices(iterations); -#endif - TestHelper.CollectGarbage(); using (new Measurement("FinalizableSlimObject", MeasurementOptions.Log, iterations)) AllocateClass_FinalizableSlimObject(iterations); TestHelper.CollectGarbage(); @@ -213,25 +205,6 @@ private void AllocateClass_InheritedObject3(int iterationCount) new InheritedObject3(); } } -#if !NET8_0_OR_GREATER - - private void AllocateClass_SlimObject_ByFormatterServices(int iterationCount) - { - var type = typeof(SlimObject); - for (int i = 0; i true false - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.Tests.FSharp/Xtensive.Orm.Tests.FSharp.fsproj b/Orm/Xtensive.Orm.Tests.FSharp/Xtensive.Orm.Tests.FSharp.fsproj index 120d57ae54..6689b2b506 100644 --- a/Orm/Xtensive.Orm.Tests.FSharp/Xtensive.Orm.Tests.FSharp.fsproj +++ b/Orm/Xtensive.Orm.Tests.FSharp/Xtensive.Orm.Tests.FSharp.fsproj @@ -3,7 +3,7 @@ true $(AssemblySearchPaths);{GAC} false - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 4.7 diff --git a/Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj b/Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj index e0a1e8f7a3..008345436e 100644 --- a/Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj +++ b/Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj @@ -2,7 +2,7 @@ true false - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/PostgreSqlHelperTest.cs b/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/PostgreSqlHelperTest.cs index 6426b9efab..1b1afc4c22 100644 --- a/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/PostgreSqlHelperTest.cs +++ b/Orm/Xtensive.Orm.Tests.Sql/PostgreSql/PostgreSqlHelperTest.cs @@ -176,18 +176,7 @@ private static void LoadServerTimeZones(Xtensive.Sql.SqlConnection connection, private static bool TryFindSystemTimeZoneById(string id, out TimeZoneInfo timeZoneInfo) { -#if NET8_0_OR_GREATER return TimeZoneInfo.TryFindSystemTimeZoneById(id, out timeZoneInfo); -#else - try { - timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById(id); - return true; - } - catch { - timeZoneInfo = null; - return false; - } -#endif } } } diff --git a/Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj b/Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj index e1fa11cfaa..5e95539e1e 100644 --- a/Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj +++ b/Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj @@ -2,7 +2,7 @@ true false - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive diff --git a/Orm/Xtensive.Orm.Tests/Configuration/MicrosoftConfigurationTests.cs b/Orm/Xtensive.Orm.Tests/Configuration/MicrosoftConfigurationTests.cs index da10f4b1ae..b35ce543b4 100644 --- a/Orm/Xtensive.Orm.Tests/Configuration/MicrosoftConfigurationTests.cs +++ b/Orm/Xtensive.Orm.Tests/Configuration/MicrosoftConfigurationTests.cs @@ -1327,7 +1327,13 @@ public void SessionCustomConnectionUrlTest(bool useRoot) [TestCase(false)] public void SessionWithInvalidOptions(bool useRoot) { - _ = Assert.Throws(() => LoadDomainConfiguration("DomainWithSessionInvalidOptions", useRoot)); + if (Postfix == "Json") { + var config = LoadDomainConfiguration("DomainWithSessionInvalidOptions", useRoot); + Assert.That(config.Sessions.Count, Is.EqualTo(0)); // no exceptions on reading, just no configurations + } + else { + _ = Assert.Throws(() => LoadDomainConfiguration("DomainWithSessionInvalidOptions", useRoot)); + } } [Test] @@ -1391,7 +1397,13 @@ public void SessionWithInvalidEntityChangeRegistryTest2(bool useRoot) [TestCase(false)] public void SessionWithInvalidCacheType1(bool useRoot) { - _ = Assert.Throws(() => LoadDomainConfiguration("DomainWithSessionInvalidCacheType", useRoot)); + if (Postfix == "Json") { + var config = LoadDomainConfiguration("DomainWithSessionInvalidCacheType", useRoot); + Assert.That(config.Sessions.Count, Is.EqualTo(0)); // no exceptions on reading, just no configurations + } + else { + _ = Assert.Throws(() => LoadDomainConfiguration("DomainWithSessionInvalidCacheType", useRoot)); + } } #endregion diff --git a/Orm/Xtensive.Orm.Tests/Model/VersionInfoTest.cs b/Orm/Xtensive.Orm.Tests/Model/VersionInfoTest.cs index 4b88f60f84..eaad013561 100644 --- a/Orm/Xtensive.Orm.Tests/Model/VersionInfoTest.cs +++ b/Orm/Xtensive.Orm.Tests/Model/VersionInfoTest.cs @@ -148,15 +148,6 @@ public Domain BuildDomain(string @namespace) return Domain.Build(configuration); } - [Test] - [Ignore("")] - [Obsolete] - public void RootOnlyVersionTest() - { - AssertEx.Throws(() => - BuildDomain("Xtensive.Orm.Tests.Model.VersionInfoTests.InvalidModel1")); - } - [Test] public void DenyKeyFieldsTest() { diff --git a/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj b/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj index f1b35fdf41..469faff783 100644 --- a/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj +++ b/Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj @@ -1,9 +1,9 @@ - + true $(AssemblySearchPaths);{GAC} false - Debug;Release;Debug-NET7;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 true @@ -12,24 +12,31 @@ 2 - - + + + + + - - + + + + + - + + + diff --git a/Orm/Xtensive.Orm/Core/Exceptions/AggregateException.cs b/Orm/Xtensive.Orm/Core/Exceptions/AggregateException.cs index eca63b0b59..9c1dd0be35 100644 --- a/Orm/Xtensive.Orm/Core/Exceptions/AggregateException.cs +++ b/Orm/Xtensive.Orm/Core/Exceptions/AggregateException.cs @@ -61,7 +61,7 @@ public override string ToString() .AppendFormat("{0}:", Strings.OriginalExceptions); int i = 1; foreach (Exception exception in exceptions) - sb.AppendLine().AppendFormat("{0}: {1}", i++, exception); + _ = sb.AppendLine().AppendFormat("{0}: {1}", i++, exception); return sb.ToString(); } diff --git a/Orm/Xtensive.Orm/Core/Internals/ValueStringBuilder.cs b/Orm/Xtensive.Orm/Core/Internals/ValueStringBuilder.cs index c2b6a16672..dde2faf12f 100644 --- a/Orm/Xtensive.Orm/Core/Internals/ValueStringBuilder.cs +++ b/Orm/Xtensive.Orm/Core/Internals/ValueStringBuilder.cs @@ -102,11 +102,7 @@ public void Insert(int index, string? s) var remaining = position - index; chars.Slice(index, remaining).CopyTo(chars.Slice(index + count)); -#if NET6_0_OR_GREATE s.CopyTo(chars.Slice(index)); -#else - s.AsSpan().CopyTo(chars.Slice(index)); -#endif position += count; } diff --git a/Orm/Xtensive.Orm/IoC/ServiceContainer.cs b/Orm/Xtensive.Orm/IoC/ServiceContainer.cs index 50575b5f06..f486ef213a 100644 --- a/Orm/Xtensive.Orm/IoC/ServiceContainer.cs +++ b/Orm/Xtensive.Orm/IoC/ServiceContainer.cs @@ -29,11 +29,7 @@ public class ServiceContainer : ServiceContainerBase { private static readonly Type iServiceContainerType = typeof(IServiceContainer); -#if NET8_0_OR_GREATER private static readonly Func> ConstructorFactory = serviceInfo => { -#else - private static readonly Func> ConstructorFactory = serviceInfo => { -#endif var mappedType = serviceInfo.MappedType; var ctor = ( from c in mappedType.GetConstructors() @@ -41,25 +37,16 @@ where c.GetAttribute(AttributeSearchOptions.Inherit select c ).SingleOrDefault() ?? mappedType.GetConstructor(Array.Empty()); var @params = ctor?.GetParameters(); -#if NET8_0_OR_GREATER return new(ctor is null ? null : ConstructorInvoker.Create(ctor), @params); -#else - return new(ctor, @params); -#endif }; private readonly IReadOnlyDictionary> types; - private readonly ConcurrentDictionary> instances = - new ConcurrentDictionary>(); + private readonly ConcurrentDictionary> instances = new(); -#if NET8_0_OR_GREATER private readonly ConcurrentDictionary> constructorCache = new(); -#else - private readonly ConcurrentDictionary> constructorCache = new(); -#endif - private readonly ConcurrentDictionary<(Type, int), bool> creating = new ConcurrentDictionary<(Type, int), bool>(); + private readonly ConcurrentDictionary<(Type, int), bool> creating = new(); #region Protected virtual methods (to override) @@ -118,14 +105,10 @@ protected virtual object CreateInstance(ServiceRegistration serviceInfo) finally { _ = creating.TryRemove(key, out _); } -#if NET8_0_OR_GREATER return cInfo.Invoke(args.AsSpan()); -#else - return cInfo.Invoke(args); -#endif } -#endregion + #endregion #region Private \ internal methods @@ -210,28 +193,15 @@ public static IServiceContainer Create(Type containerType, object configuration, Type configurationType = configuration?.GetType(), parentType = parent?.GetType(); return (IServiceContainer) ( -#if NET8_0_OR_GREATER FindConstructorInvoker(containerType, configurationType, parentType)?.Invoke(configuration, parent) ?? FindConstructorInvoker(containerType, configurationType)?.Invoke(configuration) ?? FindConstructorInvoker(containerType, parentType)?.Invoke(parent) -#else - FindConstructor(containerType, configurationType, parentType)?.Invoke(new[] { configuration, parent }) - ?? FindConstructor(containerType, configurationType)?.Invoke(new[] { configuration }) - ?? FindConstructor(containerType, parentType)?.Invoke(new[] { parent }) -#endif ?? throw new ArgumentException(Strings.ExContainerTypeDoesNotProvideASuitableConstructor, "containerType") ); } -#if NET8_0_OR_GREATER private static ConstructorInvoker FindConstructorInvoker(Type containerType, params Type[] argumentTypes) => containerType.GetSingleConstructorInvokerOrDefault(argumentTypes); -#else -#pragma warning disable CS0612 // Type or member is obsolete - private static ConstructorInfo FindConstructor(Type containerType, params Type[] argumentTypes) => - containerType.GetSingleConstructorOrDefault(argumentTypes); -#pragma warning restore CS0612 // Type or member is obsolete -#endif #endregion @@ -304,7 +274,7 @@ public static IServiceContainer Create(ConfigurationSection section, string name var typeRegistry = new TypeRegistry(new ServiceTypeRegistrationProcessor()); foreach (var typeRegistrationElement in configuration.Auto) - typeRegistry.Register(typeRegistrationElement.ToNative()); + _ = typeRegistry.Register(typeRegistrationElement.ToNative()); foreach (var type in typeRegistry) registrations.AddRange(ServiceRegistration.CreateAll(type)); foreach (var serviceRegistrationElement in configuration.Explicit) @@ -347,7 +317,7 @@ public override void Dispose() using (var toDispose = new DisposableSet()) { foreach (var lazy in instances.Values) { if (lazy.IsValueCreated && lazy.Value is IDisposable disposable) { - toDispose.Add(disposable); + _ = toDispose.Add(disposable); } } } diff --git a/Orm/Xtensive.Orm/Modelling/PropertyAccessor.cs b/Orm/Xtensive.Orm/Modelling/PropertyAccessor.cs index 909ebf3480..3d67db34ff 100644 --- a/Orm/Xtensive.Orm/Modelling/PropertyAccessor.cs +++ b/Orm/Xtensive.Orm/Modelling/PropertyAccessor.cs @@ -174,11 +174,7 @@ private void Initialize() dependencyRootType = pa.DependencyRootType; compareCaseInsensitive = tProperty == WellKnownTypes.String && pa.CaseInsensitiveComparison; } -#if NET8_0_OR_GREATER - InnerInitializeMethodDefinition.CachedMakeGenericMethodInvoker(tType, tProperty).Invoke(this); -#else - InnerInitializeMethodDefinition.CachedMakeGenericMethod(tType, tProperty).Invoke(this, null); -#endif + _ = InnerInitializeMethodDefinition.CachedMakeGenericMethodInvoker(tType, tProperty).Invoke(this); } private void InnerInitialize() diff --git a/Orm/Xtensive.Orm/Orm/Configuration/DomainConfiguration.cs b/Orm/Xtensive.Orm/Orm/Configuration/DomainConfiguration.cs index f5df3414b8..9b7cbbba30 100644 --- a/Orm/Xtensive.Orm/Orm/Configuration/DomainConfiguration.cs +++ b/Orm/Xtensive.Orm/Orm/Configuration/DomainConfiguration.cs @@ -848,7 +848,7 @@ protected override void CopyFrom(ConfigurationBase source) /// the with specified . public static DomainConfiguration Load(string sectionName, string name) { - var section = (ConfigurationSection)ConfigurationManager.GetSection(sectionName); + var section = (ConfigurationSection)System.Configuration.ConfigurationManager.GetSection(sectionName); if (section == null) { throw new InvalidOperationException(string.Format( Strings.ExSectionIsNotFoundInApplicationConfigurationFile, sectionName)); diff --git a/Orm/Xtensive.Orm/Orm/Configuration/LoggingConfiguration.cs b/Orm/Xtensive.Orm/Orm/Configuration/LoggingConfiguration.cs index ed8e7cbaac..7afe49e9cf 100644 --- a/Orm/Xtensive.Orm/Orm/Configuration/LoggingConfiguration.cs +++ b/Orm/Xtensive.Orm/Orm/Configuration/LoggingConfiguration.cs @@ -89,7 +89,7 @@ public static LoggingConfiguration Load(string sectionName) { ArgumentValidator.EnsureArgumentNotNullOrEmpty(sectionName, nameof(sectionName)); - var section = (ConfigurationSection)ConfigurationManager.GetSection(sectionName); + var section = (ConfigurationSection)System.Configuration.ConfigurationManager.GetSection(sectionName); if (section==null) throw new InvalidOperationException(string.Format(Strings.ExSectionIsNotFoundInApplicationConfigurationFile, sectionName)); var configuration = section.Logging.ToNative(); diff --git a/Orm/Xtensive.Orm/Orm/Linq/QueryProvider.cs b/Orm/Xtensive.Orm/Orm/Linq/QueryProvider.cs index 283875c038..66fbae0a9e 100644 --- a/Orm/Xtensive.Orm/Orm/Linq/QueryProvider.cs +++ b/Orm/Xtensive.Orm/Orm/Linq/QueryProvider.cs @@ -53,21 +53,12 @@ public IQueryable CreateQuery(Expression expression) => object IQueryProvider.Execute(Expression expression) { var resultType = expression.Type; -#if NET8_0_OR_GREATER var executeMethod = resultType.IsOfGenericInterface(WellKnownInterfaces.EnumerableOfT) ? WellKnownMembers.QueryProvider.ExecuteSequence.CachedMakeGenericMethodInvoker(SequenceHelper.GetElementType(resultType)) : WellKnownMembers.QueryProvider.ExecuteScalar.CachedMakeGenericMethodInvoker(resultType); try { return executeMethod.Invoke(this, expression); } -#else - var executeMethod = resultType.IsOfGenericInterface(WellKnownInterfaces.EnumerableOfT) - ? WellKnownMembers.QueryProvider.ExecuteSequence.CachedMakeGenericMethod(SequenceHelper.GetElementType(resultType)) - : WellKnownMembers.QueryProvider.ExecuteScalar.CachedMakeGenericMethod(resultType); - try { - return executeMethod.Invoke(this, new object[] { expression }); - } -#endif catch (TargetInvocationException e) { if (e.InnerException != null) { ExceptionDispatchInfo.Throw(e.InnerException); diff --git a/Orm/Xtensive.Orm/Orm/Providers/StorageDriver.cs b/Orm/Xtensive.Orm/Orm/Providers/StorageDriver.cs index 363078b2d5..787e485523 100644 --- a/Orm/Xtensive.Orm/Orm/Providers/StorageDriver.cs +++ b/Orm/Xtensive.Orm/Orm/Providers/StorageDriver.cs @@ -146,7 +146,7 @@ private void FixExtractionResultSqlServerFamily(SqlExtractionResult result) var tables = schema.Tables; var sysdiagrams = tables["sysdiagrams"]; if (sysdiagrams!=null) - tables.Remove(sysdiagrams); + _ = tables.Remove(sysdiagrams); } } @@ -190,11 +190,7 @@ private static IReadOnlyCollection CreateConnectionAccess throw new NotSupportedException(string.Format(Strings.ExConnectionAccessorXHasNoParameterlessConstructor, type)); } -#if NET8_0_OR_GREATER var accessorFactory = (Func) FactoryCreatorMethod.CachedMakeGenericMethodInvoker(type).Invoke(null); -#else - var accessorFactory = (Func) FactoryCreatorMethod.CachedMakeGenericMethod(type).Invoke(null, null); -#endif instances.Add(accessorFactory()); factoriesLocal[type] = accessorFactory; } diff --git a/Orm/Xtensive.Orm/Orm/WellKnown.cs b/Orm/Xtensive.Orm/Orm/WellKnown.cs index e9fc625b04..d593a0e1e1 100644 --- a/Orm/Xtensive.Orm/Orm/WellKnown.cs +++ b/Orm/Xtensive.Orm/Orm/WellKnown.cs @@ -94,13 +94,6 @@ public static partial class WellKnown /// public const int MaxGenericKeyLength = 4; - /// - /// Maximal number of filtering values in an - /// which are to be placed inside a resulted SQL command (as boolean predicate). - /// - [Obsolete("Use DefaultNumberOfConditions")] - public const int MaxNumberOfConditions = 256; - /// /// Default value of maximal number of filtering values in an /// which are to be placed inside a resulted SQL command (as boolean predicate). diff --git a/Orm/Xtensive.Orm/Reflection/TypeHelper.cs b/Orm/Xtensive.Orm/Reflection/TypeHelper.cs index 19e5d6ec56..070f481e3a 100644 --- a/Orm/Xtensive.Orm/Reflection/TypeHelper.cs +++ b/Orm/Xtensive.Orm/Reflection/TypeHelper.cs @@ -54,12 +54,9 @@ public int GetHashCode((Type, Type[]) obj) private static readonly string TypeHelperNamespace = typeof(TypeHelper).Namespace; #region Caches and cache items factories -#if NET8_0_OR_GREATER + private static readonly ConcurrentDictionary<(Type, Type[]), ConstructorInvoker> ConstructorInvokerByTypes = new(new TypesEqualityComparer()); -#endif - private static readonly ConcurrentDictionary<(Type, Type[]), ConstructorInfo> ConstructorInfoByTypes = - new(new TypesEqualityComparer()); private static readonly ConcurrentDictionary OrderedInterfaces = new(); @@ -72,12 +69,10 @@ public int GetHashCode((Type, Type[]) obj) private static readonly ConcurrentDictionary<(MethodInfo, Type), MethodInfo> GenericMethodInstances1 = new(); private static readonly ConcurrentDictionary<(MethodInfo, Type, Type), MethodInfo> GenericMethodInstances2 = new(); -#if NET8_0_OR_GREATER private static readonly ConcurrentDictionary<(MethodInfo, Type), MethodInvoker> GenericMethodInvokers1 = new(); private static readonly ConcurrentDictionary<(MethodInfo, Type, Type), MethodInvoker> GenericMethodInvokers2 = new(); -#endif private static readonly ConcurrentDictionary<(Type, Type), Type> GenericTypeInstances1 = new(); @@ -94,14 +89,12 @@ public int GetHashCode((Type, Type[]) obj) private static readonly Func<(Type genericDefinition, Type typeArgument1, Type typeArgument2), Type> GenericTypeFactory2 = key => key.genericDefinition.MakeGenericType(key.typeArgument1, key.typeArgument2); -#if NET8_0_OR_GREATER private static readonly Func<(MethodInfo genericDefinition, Type typeArgument), MethodInvoker> GenericMethodInvokerFactory1 = key => MethodInvoker.Create(key.genericDefinition.MakeGenericMethod(key.typeArgument)); private static readonly Func<(MethodInfo genericDefinition, Type typeArgument1, Type typeArgument2), MethodInvoker> GenericMethodInvokerFactory2 = key => MethodInvoker.Create(key.genericDefinition.MakeGenericMethod(key.typeArgument1, key.typeArgument2)); -#endif #endregion @@ -651,7 +644,6 @@ public static object Activate(this Type type, Type[] genericArguments, params ob } } -#if NET8_0_OR_GREATER /// /// Gets of the public constructor of type /// accepting specified . @@ -672,27 +664,6 @@ internal static ConstructorInvoker GetSingleConstructorInvoker(this Type type, T ? ConstructorInvoker.Create(ctor) : throw new InvalidOperationException(Strings.ExGivenTypeHasNoOrMoreThanOneCtorWithGivenParameters)); -#endif - /// - /// Gets the public constructor of type - /// accepting specified . - /// - /// The type to get the constructor for. - /// The arguments. - /// - /// Appropriate constructor, if a single match is found; - /// otherwise throws . - /// - /// - /// The has no constructors suitable for - /// -or- more than one such constructor. - /// - [Obsolete]// obsolete to safely make it internal later on or delete - public static ConstructorInfo GetSingleConstructor(this Type type, Type[] argumentTypes) => - ConstructorInfoByTypes.GetOrAdd((type, argumentTypes), ConstructorExtractor) - ?? throw new InvalidOperationException(Strings.ExGivenTypeHasNoOrMoreThanOneCtorWithGivenParameters); - -#if NET8_0_OR_GREATER /// /// Gets of the public constructor of type /// accepting specified . @@ -708,22 +679,6 @@ internal static ConstructorInvoker GetSingleConstructorInvokerOrDefault(this Typ ConstructorInvokerByTypes.GetOrAdd((type, argumentTypes), static t => ConstructorExtractor(t) is ConstructorInfo ctor ? ConstructorInvoker.Create(ctor) : null); -#endif - /// - /// Gets the public constructor of type - /// accepting specified . - /// - /// The type to get the constructor for. - /// The arguments. - /// - /// Appropriate constructor, if a single match is found; - /// otherwise, . - /// - [CanBeNull] - [Obsolete]// obsolete to safely make it internal later on - public static ConstructorInfo GetSingleConstructorOrDefault(this Type type, Type[] argumentTypes) => - ConstructorInfoByTypes.GetOrAdd((type, argumentTypes), ConstructorExtractor); - private static readonly Func<(Type, Type[]), ConstructorInfo> ConstructorExtractor = t => { (var type, var argumentTypes) = t; var constructors = @@ -997,7 +952,6 @@ public static MethodInfo CachedMakeGenericMethod(this MethodInfo genericDefiniti public static MethodInfo CachedMakeGenericMethod(this MethodInfo genericDefinition, Type typeArgument1, Type typeArgument2) => GenericMethodInstances2.GetOrAdd((genericDefinition, typeArgument1, typeArgument2), GenericMethodFactory2); -#if NET8_0_OR_GREATER /// /// Makes for generic for given definition and type argument /// or returns already existing instance from cache. @@ -1018,7 +972,6 @@ public static MethodInvoker CachedMakeGenericMethodInvoker(this MethodInfo gener /// Newly created instance or already existing one. public static MethodInvoker CachedMakeGenericMethodInvoker(this MethodInfo genericDefinition, Type typeArgument1, Type typeArgument2) => GenericMethodInvokers2.GetOrAdd((genericDefinition, typeArgument1, typeArgument2), GenericMethodInvokerFactory2); -#endif /// /// Makes generic type of given type definition and type argument diff --git a/Orm/Xtensive.Orm/Sql/Dml/Statements/SqlInsert.cs b/Orm/Xtensive.Orm/Sql/Dml/Statements/SqlInsert.cs index 32d7f28301..bcefeba871 100644 --- a/Orm/Xtensive.Orm/Sql/Dml/Statements/SqlInsert.cs +++ b/Orm/Xtensive.Orm/Sql/Dml/Statements/SqlInsert.cs @@ -18,13 +18,6 @@ public class SqlInsert : SqlQueryStatement, ISqlCompileUnit /// The table to change. public SqlTableRef Into { get; set; } - /// - /// Gets the values. - /// - /// The values. - [Obsolete("No longer in use. Use ValueRows.Add to add values")] - public Dictionary Values { get; private set; } = new(); - /// /// Gets rows of values. /// diff --git a/Orm/Xtensive.Orm/Xtensive.Orm.csproj b/Orm/Xtensive.Orm/Xtensive.Orm.csproj index 0b7a1746c6..9af03f1bb3 100644 --- a/Orm/Xtensive.Orm/Xtensive.Orm.csproj +++ b/Orm/Xtensive.Orm/Xtensive.Orm.csproj @@ -1,8 +1,8 @@ - + true $(OutputPath)$(TargetFramework)\$(AssemblyName).xml - Debug;Release;Debug-NET5;Release-NET5;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 Xtensive @@ -54,16 +54,18 @@ false - - + + + + - - + + + + - - diff --git a/Publish/NuGetPublish.csproj b/Publish/NuGetPublish.csproj index a0707fb6f2..335c3fb04f 100644 --- a/Publish/NuGetPublish.csproj +++ b/Publish/NuGetPublish.csproj @@ -15,7 +15,7 @@ false true 0 - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8; + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10 diff --git a/Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj b/Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj index 897076fbba..2a555841d4 100644 --- a/Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj +++ b/Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj @@ -8,7 +8,7 @@ $(BaseOutputPath)tools\weaver\$(TargetFramework)\ $(BaseIntermediateOutputPath)$(Configuration)\$(TargetFramework)\ Major - Debug;Release;Debug-NET6;Release-NET6;Debug-NET7;Release-NET7;Debug-NET8;Release-NET8 + Debug;Release;Debug-NET8;Release-NET8;Debug-NET10;Release-NET10