v3.5.100-preview20241123 - 更新到 .net90

This commit is contained in:
2881099
2024-11-23 12:57:54 +08:00
parent d528ccca44
commit 55000de8c5
39 changed files with 280 additions and 183 deletions

View File

@@ -12,7 +12,7 @@
<!--
经常出于版本交叉问题,暂时关闭,在每个项目上设置版本号
<PropertyGroup>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
</PropertyGroup>
-->

View File

@@ -15,7 +15,6 @@
<ItemGroup>
<PackageReference Include="Confluent.Kafka" Version="2.2.0" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="Npgsql.NetTopologySuite" Version="6.0.4" />
<PackageReference Include="MessagePack" Version="2.4.35" />
<PackageReference Include="SQLitePCLRaw.bundle_e_sqlite3" Version="2.1.5" />
</ItemGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -19,7 +19,7 @@
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<LangVersion>latest</LangVersion>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -15,7 +15,7 @@
<Title>$(AssemblyName)</Title>
<IsPackable>true</IsPackable>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -13,7 +13,7 @@
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
<RepositoryUrl>https://github.com/2881099/FreeSql</RepositoryUrl>
<PackageTags>FreeSql DbFirst 实体生成器</PackageTags>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -17,7 +17,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;net5.0;netstandard2.1;netcoreapp3.1;netstandard2.0;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;net5.0;netcoreapp3.1;netstandard2.1;netstandard2.0;net45;net40</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql is the ORM in .NetCore, .NetFramework, And Xamarin. It supports Mysql, Postgresql, SqlServer, Oracle, Sqlite, Firebird, Clickhouse, DuckDB, TDengine, QuestDB, Odbc, Oledb, 达梦, 人大金仓, 南大通用, 虚谷, 神舟通用, 翰高, And Access</Description>
@@ -17,7 +17,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -35,10 +35,13 @@
<PropertyGroup Condition="'$(TargetFramework)' == 'net40'">
<DefineConstants>net40</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0' or '$(TargetFramework)' == 'net5.0' or '$(TargetFramework)' == 'netcoreapp3.1'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0' or '$(TargetFramework)' == 'net5.0' or '$(TargetFramework)' == 'netcoreapp3.1'">
<DefineConstants>netcoreapp</DefineConstants>
</PropertyGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
</ItemGroup>
@@ -58,9 +61,4 @@
<ItemGroup>
<ProjectReference Include="..\FreeSql\FreeSql.csproj" />
</ItemGroup>
<ItemGroup>
<Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
</ItemGroup>
</Project>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;net5.0;netcoreapp3.1;netstandard2.1;netstandard2.0;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;net5.0;netcoreapp3.1;netstandard2.1;netstandard2.0;net45;net40</TargetFrameworks>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql Implementation of General Repository, Support MySql/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/Clickhouse/DuckDB/TDengine/QuestDB/达梦/人大金仓/南大通用/虚谷/神舟通用/翰高/Access, and read/write separation、and split table.</Description>
<PackageProjectUrl>https://github.com/2881099/FreeSql/wiki/Repository</PackageProjectUrl>
@@ -17,7 +17,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -17,7 +17,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1660,6 +1660,104 @@
<param name="transaction"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IInsert`1.WithConnection(System.Data.Common.DbConnection)">
<summary>
指定事务对象
</summary>
<param name="connection"></param>
<returns></return>
<summary>
原生sql语法条件Where("id = @id", new { id = 1 })<para></para>
提示parms 参数还可以传 Dictionary&lt;string, object&gt;
</summary>
<param name="condition">true 时生效</param>
<param name="sql">sql语法条件</param>
<param name="parms">参数</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.Where(`0)">
<summary>
传入实体,将主键作为条件
</summary>
<param name="item">实体</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.Where(System.Collections.Generic.IEnumerable{`0})">
<summary>
传入实体集合,将主键作为条件
</summary>
<param name="items">实体集合</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.WhereDynamic(System.Object,System.Boolean)">
<summary>
传入动态条件,如:主键值 | new[]{主键值1,主键值2} | TEntity1 | new[]{TEntity1,TEntity2} | new{id=1}
</summary>
<param name="dywhere">主键值、主键值集合、实体、实体集合、匿名对象、匿名对象集合</param>
<param name="not">是否标识为NOT</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.WhereDynamicFilter(FreeSql.Internal.Model.DynamicFilterInfo)">
<summary>
动态过滤条件
</summary>
<param name="filter"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.DisableGlobalFilter(System.String[])">
<summary>
禁用全局过滤功能,不传参数时将禁用所有
</summary>
<param name="name">零个或多个过滤器名字</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.AsTable(System.Func{System.String,System.String})">
<summary>
设置表名规则,可用于分库/分表参数1默认表名返回值新表名
</summary>
<param name="tableRule"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.AsTable(System.String)">
<summary>
设置表名
</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.AsType(System.Type)">
<summary>
动态Type在使用 Delete&lt;object&gt; 后使用本方法,指定实体类型
</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.ToSql">
<summary>
返回即将执行的SQL语句
</summary>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.ExecuteAffrows">
<summary>
执行SQL语句返回影响的行数
</summary>
<returns></returns>
</member>
<member name="M:FreeSql.IDelete`1.ExecuteDeleted">
<summary>
执行SQL语句返回被删除的记录<para></para>
注意:此方法只有 Postgresql/SqlServer/Maridb/Firebird/人大金仓 有效果
</summary>
<returns></returns>
</member>
<member name="M:FreeSql.IInsert`1.WithTransaction(System.Data.Common.DbTransaction)">
<summary>
指定事务对象
</summary>
<param name="transaction"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IInsert`1.WithConnection(System.Data.Common.DbConnection)">
<summary>
指定事务对象
@@ -4205,105 +4303,7 @@
同步实体类型到数据库(指定表名)<para></para>
注意:生产环境中谨慎使用
</summary>
<param name="entityType">实体类型</param>
<param name="tableName">指定表名对比</param>
<param name="isForceSync">强制同步结构,无视缓存每次都同步</param>
</member>
<member name="M:FreeSql.ICodeFirst.GetDbInfo(System.Type)">
<summary>
根据 System.Type 获取数据库信息
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:FreeSql.ICodeFirst.ConfigEntity``1(System.Action{FreeSql.DataAnnotations.TableFluent{``0}})">
<summary>
FreeSql FluentApi 配置实体,方法名与特性相同
</summary>
<typeparam name="T"></typeparam>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:FreeSql.ICodeFirst.ConfigEntity(System.Type,System.Action{FreeSql.DataAnnotations.TableFluent})">
<summary>
FreeSql FluentApi 配置实体,方法名与特性相同
</summary>
<param name="type"></param>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:FreeSql.ICodeFirst.GetConfigEntity(System.Type)">
<summary>
获取 FreeSql FluentApi 配置实体的元数据
</summary>
<param name="type"></param>
<returns>未使用ConfigEntity配置时返回null</returns>
</member>
<member name="M:FreeSql.ICodeFirst.GetTableByEntity(System.Type)">
<summary>
获取实体类核心配置
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetDatabases">
<summary>
获取所有数据库
</summary>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetTablesByDatabase(System.String[])">
<summary>
获取指定数据库的表信息,包括表、列详情、主键、唯一键、索引、外键、备注
</summary>
<param name="database"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetTableByName(System.String,System.Boolean)">
<summary>
获取指定单表信息,包括列详情、主键、唯一键、索引、备注
</summary>
<param name="name">表名dbo.table1</param>
<param name="ignoreCase">是否忽略大小写</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.ExistsTable(System.String,System.Boolean)">
<summary>
判断表是否存在
</summary>
<param name="name">表名dbo.table1</param>
<param name="ignoreCase">是否忽略大小写</param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetDbType(FreeSql.DatabaseModel.DbColumnInfo)">
<summary>
获取数据库枚举类型int值
</summary>
<param name="column"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetCsConvert(FreeSql.DatabaseModel.DbColumnInfo)">
<summary>
获取c#转换,(int)、(long)
</summary>
<param name="column"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetCsTypeValue(FreeSql.DatabaseModel.DbColumnInfo)">
<summary>
获取c#值
</summary>
<param name="column"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetCsType(FreeSql.DatabaseModel.DbColumnInfo)">
<summary>
获取c#类型int、long
</summary>
<param name="column"></param>
<returns></returns>
</member>
<member name="M:FreeSql.IDbFirst.GetCsTypeInfo(FreeSql.DatabaseModel.DbColumnInfo)">
<param name="entityTytCsTypeInfo(FreeSql.DatabaseModel.DbColumnInfo)">
<summary>
获取c#类型对象
</summary>

View File

@@ -19,7 +19,7 @@
<SignAssembly>False</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -15,7 +15,7 @@
<Title>$(AssemblyName)</Title>
<IsPackable>true</IsPackable>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -10,6 +10,7 @@ using System.Linq;
using FreeSql.Internal.CommonProvider;
using DuckDB.NET.Data;
using static DuckDB.NET.Native.NativeMethods;
using ColumnInfo = FreeSql.Internal.Model.ColumnInfo;
namespace FreeSql.Duckdb
{

View File

@@ -13,6 +13,7 @@ using System.Numerics;
using static DuckDB.NET.Native.NativeMethods;
using System.Text;
using System.Security.AccessControl;
using ColumnInfo = FreeSql.Internal.Model.ColumnInfo;
namespace FreeSql.Duckdb
{

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.0</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql + DuckDB is a fast in-process analytical databasesupports .NetCore、.NetFramework4.6.1+</Description>
@@ -18,24 +18,24 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
<ItemGroup>
<None Include="../../readme.md" Pack="true" PackagePath="\"/>
<None Include="../../readme.md" Pack="true" PackagePath="\" />
<None Include="../../logo.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="DuckDB.NET.Data.Full" Version="1.0.2" />
<PackageReference Include="DuckDB.NET.Data.Full" Version="1.1.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\FreeSql\FreeSql.csproj" />
</ItemGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60</DefineConstants>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;net452</TargetFrameworks>
<TargetFrameworks>netstandard2.1;netstandard2.0;net452</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 Firebird</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -27,8 +27,8 @@
<None Include="../../logo.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PackageReference Include="FirebirdSql.Data.FirebirdClient" Version="8.5.4" />
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'netstandard2.0'">
<PackageReference Include="FirebirdSql.Data.FirebirdClient" Version="10.3.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net452'">
<PackageReference Include="FirebirdSql.Data.FirebirdClient" Version="7.10.1" />

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0;net461</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.0;net461</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 人大金仓数据库 V008R003/V008R006 Ado.Net (Kdbndp)</Description>
@@ -15,7 +15,7 @@
<Title>$(AssemblyName)</Title>
<IsPackable>true</IsPackable>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -50,7 +50,7 @@
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<DefineConstants>ns20;netstandard20</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60</DefineConstants>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0;net452;net451;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net452;net451;net45;net40</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 MySql 5.6Ado.Net 驱动是 MySql.DataOracle官方</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -27,7 +27,10 @@
<None Include="../../logo.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net452' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PackageReference Include="MySql.Data" Version="9.1.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net452'">
<PackageReference Include="MySql.Data" Version="8.0.30" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net451' or '$(TargetFramework)' == 'net45' or '$(TargetFramework)' == 'net40'">
@@ -41,7 +44,7 @@
<PropertyGroup Condition="'$(TargetFramework)' == 'net40'">
<DefineConstants>net40</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60</DefineConstants>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netcoreapp3.1;netstandard2.1;netstandard2.0;net45</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net45</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 MySql 5.6Ado.Net 驱动是 MySqlConnector</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -27,8 +27,12 @@
<None Include="../../logo.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="MySqlConnector" Version="2.0.0" />
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PackageReference Include="MySqlConnector" Version="2.4.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net45'">
<PackageReference Include="MySqlConnector" Version="2.1.13" />
</ItemGroup>
<ItemGroup>
@@ -45,7 +49,7 @@
<PropertyGroup>
<DefineConstants>MySqlConnector</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60;MySqlConnector</DefineConstants>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net6.0;net5.0;netstandard2.1;netstandard2.0;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;net5.0;netcoreapp31;netstandard2.1;net45;net40</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 Oracle 11</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -27,13 +27,9 @@
<None Include="../../logo.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PackageReference Include="Oracle.ManagedDataAccess.Core" Version="2.19.210" />
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0' or '$(TargetFramework)' == 'net5.0' or '$(TargetFramework)' == 'netcoreapp31'">
<PackageReference Include="Oracle.ManagedDataAccess.Core" Version="23.6.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'net6.0' or '$(TargetFramework)' == 'net5.0'">
<PackageReference Include="Oracle.ManagedDataAccess.Core" Version="3.21.120" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net45' or '$(TargetFramework)' == 'net40'">
<PackageReference Include="Oracle.ManagedDataAccess" Version="19.18.0" />
</ItemGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0;net461;net452;net451;net45</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.0;net461;net452;net451;net45</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 PostgreSQL 9.5</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -31,7 +31,7 @@
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Npgsql.LegacyPostgis" Version="5.0.11" />
<PackageReference Include="Npgsql.NetTopologySuite" Version="5.0.11" />
</ItemGroup>
@@ -49,7 +49,7 @@
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net461'">
<DefineConstants>nts</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60</DefineConstants>
</PropertyGroup>

View File

@@ -1,11 +1,14 @@
using Newtonsoft.Json.Linq;
using Npgsql;
using NpgsqlTypes;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.Linq;
using System.Net;
using System.Net.NetworkInformation;
using System.Text.RegularExpressions;
namespace Newtonsoft.Json
{
@@ -57,6 +60,98 @@ namespace Newtonsoft.Json
return false;
}
private static readonly Regex NpgsqlPointParseRegex = new Regex("\\((-?\\d+.?\\d*),(-?\\d+.?\\d*)\\)");
static NpgsqlPoint NpgsqlPointParse(string s)
{
Match match = NpgsqlPointParseRegex.Match(s);
if (!match.Success)
throw new FormatException("Not a valid point: " + s);
return new NpgsqlPoint(double.Parse(match.Groups[1].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat), double.Parse(match.Groups[2].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat));
}
static readonly Regex NpgsqlLineRegex = new Regex(@"\{(-?\d+.?\d*),(-?\d+.?\d*),(-?\d+.?\d*)\}");
static NpgsqlLine NpgsqlLineParse(string s)
{
var m = NpgsqlLineRegex.Match(s);
if (!m.Success)
throw new FormatException("Not a valid line: " + s);
return new NpgsqlLine(
double.Parse(m.Groups[1].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[2].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[3].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat)
);
}
static readonly Regex NpgsqlLSegRegex = new Regex(@"\[\((-?\d+.?\d*),(-?\d+.?\d*)\),\((-?\d+.?\d*),(-?\d+.?\d*)\)\]");
static NpgsqlLSeg NpgsqlLSegParse(string s)
{
var m = NpgsqlLSegRegex.Match(s);
if (!m.Success)
{
throw new FormatException("Not a valid line: " + s);
}
return new NpgsqlLSeg(
double.Parse(m.Groups[1].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[2].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[3].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[4].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat)
);
}
static readonly Regex NpgsqlBoxRegex = new Regex(@"\((-?\d+.?\d*),(-?\d+.?\d*)\),\((-?\d+.?\d*),(-?\d+.?\d*)\)");
static NpgsqlBox NpgsqlBoxParse(string s)
{
var m = NpgsqlBoxRegex.Match(s);
return new NpgsqlBox(
new NpgsqlPoint(double.Parse(m.Groups[1].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[2].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat)),
new NpgsqlPoint(double.Parse(m.Groups[3].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[4].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat))
);
}
static NpgsqlPath NpgsqlPathParse(string s)
{
var open = s[0] == '[' ? true : (s[0] == '(' ? false : throw new Exception("Invalid path string: " + s));
Debug.Assert(s[s.Length - 1] == (open ? ']' : ')'));
var result = new NpgsqlPath(open);
var i = 1;
while (true)
{
var i2 = s.IndexOf(')', i);
result.Add(NpgsqlPointParse(s.Substring(i, i2 - i + 1)));
if (s[i2 + 1] != ',')
break;
i = i2 + 2;
}
return result;
}
static NpgsqlPolygon NpgsqlPolygonParse(string s)
{
var points = new List<NpgsqlPoint>();
var i = 1;
while (true)
{
var i2 = s.IndexOf(')', i);
points.Add(NpgsqlPointParse(s.Substring(i, i2 - i + 1)));
if (s[i2 + 1] != ',')
break;
i = i2 + 2;
}
return new NpgsqlPolygon(points);
}
static readonly Regex NpgsqlCircleRegex = new Regex(@"<\((-?\d+.?\d*),(-?\d+.?\d*)\),(\d+.?\d*)>");
static NpgsqlCircle NpgsqlCircleParse(string s)
{
var m = NpgsqlCircleRegex.Match(s);
if (!m.Success)
throw new FormatException("Not a valid circle: " + s);
return new NpgsqlCircle(
double.Parse(m.Groups[1].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[2].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat),
double.Parse(m.Groups[3].ToString(), NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat)
);
}
private object YieldJToken(Type ctype, JToken jt, int rank)
{
if (jt.Type == JTokenType.Null) return null;
@@ -65,13 +160,13 @@ namespace Newtonsoft.Json
var ctypeGenericType1 = ctype.GenericTypeArguments.FirstOrDefault();//ctype.Namespace == "System" && ctype.Name.StartsWith("Nullable`") ? ctype.GenericTypeArguments.FirstOrDefault() : null;
if (ctype == typeof_BitArray) return jt.ToString().ToBitArray();
if (ctype == typeof_NpgsqlPoint || ctypeGenericType1 == typeof_NpgsqlPoint) return NpgsqlPoint.Parse(jt.ToString());
if (ctype == typeof_NpgsqlLine || ctypeGenericType1 == typeof_NpgsqlLine) return NpgsqlLine.Parse(jt.ToString());
if (ctype == typeof_NpgsqlLSeg || ctypeGenericType1 == typeof_NpgsqlLSeg) return NpgsqlLSeg.Parse(jt.ToString());
if (ctype == typeof_NpgsqlBox || ctypeGenericType1 == typeof_NpgsqlBox) return NpgsqlBox.Parse(jt.ToString());
if (ctype == typeof_NpgsqlPath || ctypeGenericType1 == typeof_NpgsqlPath) return NpgsqlPath.Parse(jt.ToString());
if (ctype == typeof_NpgsqlPolygon || ctypeGenericType1 == typeof_NpgsqlPolygon) return NpgsqlPolygon.Parse(jt.ToString());
if (ctype == typeof_NpgsqlCircle || ctypeGenericType1 == typeof_NpgsqlCircle) return NpgsqlCircle.Parse(jt.ToString());
if (ctype == typeof_NpgsqlPoint || ctypeGenericType1 == typeof_NpgsqlPoint) return NpgsqlPointParse(jt.ToString());
if (ctype == typeof_NpgsqlLine || ctypeGenericType1 == typeof_NpgsqlLine) return NpgsqlLineParse(jt.ToString());
if (ctype == typeof_NpgsqlLSeg || ctypeGenericType1 == typeof_NpgsqlLSeg) return NpgsqlLSegParse(jt.ToString());
if (ctype == typeof_NpgsqlBox || ctypeGenericType1 == typeof_NpgsqlBox) return NpgsqlBoxParse(jt.ToString());
if (ctype == typeof_NpgsqlPath || ctypeGenericType1 == typeof_NpgsqlPath) return NpgsqlPathParse(jt.ToString());
if (ctype == typeof_NpgsqlPolygon || ctypeGenericType1 == typeof_NpgsqlPolygon) return NpgsqlPolygonParse(jt.ToString());
if (ctype == typeof_NpgsqlCircle || ctypeGenericType1 == typeof_NpgsqlCircle) return NpgsqlCircleParse(jt.ToString());
if (ctype == typeof_Cidr || ctypeGenericType1 == typeof_Cidr)
{

View File

@@ -35,7 +35,7 @@ public static partial class PostgreSQLTypesExtensions
double radLng2 = (double)(point.X) * Math.PI / 180d;
return 2 * Math.Asin(Math.Sqrt(Math.Pow(Math.Sin((radLat1 - radLat2) / 2), 2) + Math.Cos(radLat1) * Math.Cos(radLat2) * Math.Pow(Math.Sin((radLng1 - radLng2) / 2), 2))) * 6378137;
}
public static NpgsqlRange<T> ToNpgsqlRange<T>(this string that)
{
var s = that;

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -15,7 +15,7 @@
<Title>$(AssemblyName)</Title>
<IsPackable>true</IsPackable>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0;net451;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net451;net45;net40</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 SqlServer 2005+并根据版本适配分页方法row_number 或 offset fetch next</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<DelaySign>false</DelaySign>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -30,21 +30,21 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net451'">
<PackageReference Include="System.Data.SqlClient" Version="4.8.6" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Microsoft.Data.SqlClient" Version="2.1.7" />
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'netstandard2.0' or '$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.2.2" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\FreeSql\FreeSql.csproj" />
</ItemGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.1' or '$(TargetFramework)' == 'netstandard2.0'">
<DefineConstants>microsoft</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net40'">
<DefineConstants>net40</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60;microsoft</DefineConstants>
</PropertyGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0;net451;net45;net40</TargetFrameworks>
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net451;net45;net40</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>FreeSql;ncc;YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 System.Data.SqlClient + SqlServer 2005+并根据版本适配分页方法row_number 或 offset fetch next</Description>
@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>
@@ -42,7 +42,7 @@
<PropertyGroup Condition="'$(TargetFramework)' == 'net40'">
<DefineConstants>net40</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<PropertyGroup Condition="'$(TargetFramework)' == 'net9.0' or '$(TargetFramework)' == 'net8.0' or '$(TargetFramework)' == 'net7.0' or '$(TargetFramework)' == 'net6.0'">
<DefineConstants>net60</DefineConstants>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -18,7 +18,7 @@
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
<DelaySign>false</DelaySign>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>

View File

@@ -15,7 +15,7 @@
<Title>$(AssemblyName)</Title>
<IsPackable>true</IsPackable>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<Version>3.5.100-preview20241113</Version>
<Version>3.5.100-preview20241123</Version>
<PackageReadmeFile>readme.md</PackageReadmeFile>
</PropertyGroup>