FreeSql

🦄 .NET aot orm, C# orm, VB.NET orm, Mysql orm, Postgresql orm, SqlServer orm, Oracle orm, Sqlite orm, Firebird orm, 达梦 orm, 人大金仓 orm, 神通 orm, 翰高 orm, 南大通用 orm, 虚谷 orm, 国产 orm, Clickhouse orm, QuestDB orm, MsAccess orm.

MIT License

Stars
3.9K
Committers
39

Bot releases are visible (Hide)

FreeSql - v3.2.820 Latest Release

Published by 2881099 7 months ago

  • 增加 DynamicEntity TypeBuilder 只读属性;
  • 修复 .NET9 TimeSpan.FromSeconds Reflect bug;#1748 #99588
  • 修复 IBaseRepository.IncludePropertyName 可能报错的问题;#1740
  • 修复 弱类型 IBaseRepository<object> 级联操作问题;#1740
  • 修复 Where(HzyTuple) 参数为 null 时的错误;#1744
  • 修复 IUpdate.SetSource SqlServer 批量更新 Cast 问题;#1755
  • 修复 SqlServer 导航属性 .Any 布尔子条件解析问题;
  • 优化 DbSet/Repository Attach 与 CanUpdate AuditValue 状态不同步问题;#1746
  • 优化 QuestDb BulkCopy 重命名为:ExecuteQuestDbBulkCopy;#1758
  • 优化 Clickhouse BulkCopy 重命名为:ExecuteClickHouseBulkCopy;#1758
FreeSql - v3.2.815

Published by 2881099 8 months ago

  • 修复 MySqlEnum CHAR/BYTE 替换后前面多个空格的问题;#1737
  • 修复 Clickhouse ToInt32/ToInt64 解析错误;
  • 修复 WithMemory 对 InsertValueSql 属性无效的问题;
  • 修复 ZeroDbContext GroupBy BUG;
  • 修复 聚合根仓储 InsertOrUpdate OneToMany 只插入一条记录的 bug;
  • 优化 TypeHandlers 支持 Enum 枚举映射规则;#1634
FreeSql - v3.2.812

Published by 2881099 9 months ago

  • 增加 DbContextOptions.AuditValue 基于 Ioc Scoped 审计值;
  • 优化 ManyToMany 导航属性约定命名匹配嵌套类;
  • 修复 MySql AsTreeCte pathSelector 别名问题;
  • 修复 ClickHouse UpdateDict 报错问题;#1712
  • 修复 MsAccess 日期问题;#1724 #1725
FreeSql - v3.2.811

Published by 2881099 9 months ago

  • 增加 DbContextOptions.AuditValue 基于 Ioc Scoped 审计值;
  • 修复 Enum -> MapType(string) + GroupBy 解析问题;#1727
  • 修复 MySql AsTreeCte pathSelector 别名问题;
  • 修复 ClickHouse UpdateDict 报错问题;#1712
  • 修复 MsAccess 日期问题;#1724 #1725
FreeSql - v3.2.810

Published by 2881099 9 months ago

  • 修复 GroupBy + WithTempQuery 别名问题;
  • 修复 DbContext/Repository InsertOrUpdate 无变化时触发 Insert 逻辑报错;#1700
  • 修复 ClickHouse 数组类型 hasAny 与 In 解析冲突问题;#1699
  • 补充 WithMemory null/Empty 参数判断;
  • 优化 表达式树解析;
FreeSql - v3.2.808

Published by 2881099 10 months ago

  • 增加 低代码扩展包 FreeSql.Extensions.ZoreEntity
  • 增加 Clickhouse Bool/Array 类型适配;(感谢 d4ilys)#1568
  • 增加 Clickhouse BulkCopy;
  • 增加 IBaseRepository.AsTable 重载方法支持多表表名设置;
  • 增加 IAsTable 自动分表支持不规则时间间隔;
  • 增加 IAsTable.SetTableName 自动分表设置分表名;
  • 增加 IAsTable.SetDefaultAllTables 自动分表拦截未使用 where 条件的场景;
  • 增加 IUpdate.ExecuteUpdated 指定字段返回;#1681
  • 增加 IUpdate.SetDtoIgnore 忽略Dto更新方法;#1688
  • 增加 ICodeFirst.SyncStructure(TableInfo) 重载方法迁移表结构;
  • 增加 IUpdate/IDelete WhereDynamicFilter API;#1521
  • 增加 WithSql().WhereDynamicFilter 的支持;
  • 增加 pgsql 扩展方法 ISelect.DistinctOn;#1680
  • 修复 Column DbType 与 StringLength 多次替换问题;
  • 修复 Where(a => a.bool) 当使用了 MapType(int) 时出现 bug;
  • 修复 SqlServer 批量更新 bool? null 值生成多余的 case when SQL;
  • 修复 Xugu 批量插入/更新 SQL 报错;
  • 修复 OledbOracle 参数化处理 bug;
  • 修复 多表子查询参数化共享问题;
  • 修复 嵌套查询 DTO 映射可能触发循环引用 bug;
  • 补充 达梦 IDbFirst datetime 处理;
  • 补充 FluentApi AsTable 方法;
  • 优化 自动分表 join 分表(自动贴合);
  • 优化 UnionAll + WithTempQuery 嵌套的 SQL;
  • 优化 Update 无字段时不做任何处理;
  • 优化 IUpdate 未使用 .Set 时忽略执行;#1694
  • 优化 表达式解析变量或常量 ToString;
FreeSql - v3.2.806

Published by 2881099 10 months ago

  • 增加 低代码扩展包 FreeSql.Extensions.ZoreEntity
  • 增加 Clickhouse Bool/Array 类型适配;(感谢 d4ilys)#1568
  • 增加 Clickhouse BulkCopy;
  • 增加 IBaseRepository.AsTable 重载方法支持多表表名设置;
  • 增加 IAsTable 自动分表支持不规则时间间隔;
  • 增加 IAsTable.SetTableName 自动分表设置分表名;
  • 增加 IAsTable.SetDefaultAllTables 自动分表拦截未使用 where 条件的场景;
  • 增加 IUpdate.ExecuteUpdated 指定字段返回;#1681
  • 增加 ICodeFirst.SyncStructure(TableInfo) 重载方法迁移表结构;
  • 增加 IUpdate/IDelete WhereDynamicFilter API;#1521
  • 增加 WithSql().WhereDynamicFilter 的支持;
  • 增加 pgsql 扩展方法 ISelect.DistinctOn;#1680
  • 修复 Column DbType 与 StringLength 多次替换问题;
  • 修复 Where(a => a.bool) 当使用了 MapType(int) 时出现 bug;
  • 修复 SqlServer 批量更新 bool? null 值生成多余的 case when SQL;
  • 修复 Xugu 批量插入/更新 SQL 报错;
  • 修复 OledbOracle 参数化处理 bug;
  • 修复 多表子查询参数化共享问题;
  • 补充 达梦 IDbFirst datetime 处理;
  • 补充 FluentApi AsTable 方法;
  • 优化 自动分表 join 分表(自动贴合);
  • 优化 UnionAll + WithTempQuery 嵌套的 SQL;
  • 优化 Update 无字段时不做任何处理;
  • 优化 表达式解析变量或常量 ToString;
FreeSql - v3.2.805

Published by 2881099 11 months ago

  • 更新 支持到 .net8.0,FreeSql.DbContext 放弃 .netcoreapp2.1 依赖注入;
  • 调整 DataType.SqlServer/MySql/PostgreSQL 默认使用 Ado 连接池;
  • 增加 InsertDict ExecuteIdentity 重载指定自增列;
  • 修复 Expression 导致 AOT 运行失败的问题;
  • 修复 MySql 8.0 索引 DESC 的判断;#1664
  • 修复 Xugu Insert + AsTable + ExecuteIdentity bug;
  • 修复 虚谷日期格式化函数映射;
  • 优化 RereadSql 支持表的其他字段使用;#1655
FreeSql - v3.2.802

Published by 2881099 12 months ago

  • 增加 Aop.AuditDataReader 参数属性 PropertyInfo,实现自定义拦截;
  • 修复 v3.2.801 AsTreeCte cte_path 别名问题;
  • 修复 UpdateJoin SetIf 逻辑判断问题;
  • 修复 UpdateJoin IsVersion 字段的别名问题;
  • 修复 RawJoin 可能生成错误的 SQL;
  • 修复 Repository.InsertOrUpdate 更新未变化时的 SQL 错误;#1630
  • 修复 IncludeMany 变异 Where + ToList dto 无法级联;
  • 修复 Ado.net 扩展方法 SqliteCore 支持;#1638
  • 修复 Xugu 有关 bug;
  • 优化 TypeHandlers 支持 DateTime 映射规则;#1634
  • 优化 IUpdateJoin AsTable 同时对多表名设置;
  • 优化 多实例情况下 TableInfo 集合缓存;
FreeSql - v3.2.801

Published by 2881099 about 1 year ago

  • 增加 FreeSql.Internal.Utils.TypeHandlers 自定义类型映射;
  • 增加 IInsertOrUpdate BatchOptions 选项;
  • 修复 v3.2.700 oracle/达梦子查询 BUG;
  • 修复 FreeSql.Geneartor 无法生成人大金仓数据库问题;
  • 修复 ClickHouse CodeFirst 多主键问题;
  • 修复 QuestDB BulkCopy 自定义表名无效的问题;
  • 修复 QuestDb And Or 优先级解析问题;
  • 修复 DynamicEntity 特性构造函数实例化问题;
  • 修复 IInsertOrUpdate BulkCopy 临时表名的问题;#1603
  • 修复 IUpdateJoin + 全局过滤器 + 从表不生效问题;#1612
  • 修复 JsonMap 进行 null 或非 null 查询;#1613
  • 修复 GroupBy + WithTempQuery + .Key.xx + 特性名与实体不同 + 三元表达式解析问题;
  • 修复 MySql AsTreeCte cte_path 可能长度过短问题;
  • 修复 MySql + InsertOrUpdateDict + IfExistsDoNothing 错误;#1601
  • 优化 MySql/Sqlite InsertOrUpdate + IfExistsDoNothing 简化 SQL insert ignore into;#1601
  • 优化 WithLock/WithIndex 非 SqlServer 时忽略;
  • 优化 MySql ServerTime = DateTimeKind.Utc 不支持 utc_timestamp 默认值问题;#1604
  • 优化 ObjectPool 恢复可用的时机;
FreeSql - v3.2.700 (oracle/达梦子查询有 BUG)

Published by 2881099 about 1 year ago

  • 增加 GlobalFilter.Apply before 参数将过滤条件插入 where 之前;#1566 #1492
  • 增加 多表 As 设置别名的方法 fsql.Select<T1, T2>().As("t1", "t2");
  • 优化 WithTempQuery + SqlServer 未指定 OrderBy 的分页;
  • 优化 GetPropertiesDictIgnoreCase 不返回没有 get 的属性;
  • 修复 QuestDB Guid 类型的问题;
  • 修复 BaseEntity 子查询 .Where 问题;#1586
FreeSql - v3.2.698

Published by 2881099 over 1 year ago

  • 增加 FreeSqlBuilder UseAdoConnectionPool 更换连接池方案;#1524 #1343 #1283 #755
  • 增加 InsertOrUpdateDict WhereIdentityPrimary 方法;
  • 增加 pgsql 索引 B_Tree, Hash, GiST, GIN, SP_GiST, BRIN;
  • 修复 pgsql jsonb poco 方案联表查询问题;#1549 #1071
  • 修复 pgsql Geo 函数自定义解析深度问题;#1422
  • 修复 PgCopy 处理 jsonb 类型的问题;#1532
  • 修复 Enum.ToString() 即使 MapType=int 也应解析成 string;#1252 #806
  • 修复 repository/dbset AddRange AuditValue IEnumable 失败的 bug;#1545
  • 修复 达梦某情况连接串解析 user id 问题;
  • 修复 QuestDB 表达式解析 DateTime.UtcNow bug;
  • 修复 QuestDb BulkCopy在特定情况下无法解析表名问题;
  • 优化 QuestDB Guid 映射;
  • 优化 QuestDB 类型映射,表达式函数解析,新增 QuestFunc 函数解析;
  • 优化 uow + ISelect.ToUpdate 事务传播;#1562
  • 调整 QuestDB SampleUnits 命名,去掉 s;
FreeSql - v3.2.697

Published by 2881099 over 1 year ago

  • 增加 IInsertOrUpdate.UpdateSet 指定更新;
  • 修复 3.2.696 自动分表 bug;#1527 e79860164d5d12e4f7df747f0e29503dff301cb7
FreeSql - v3.2.696

Published by 2881099 over 1 year ago

  • 修复 <object> + AsType + (a as BaseEntity) 解析问题;#1427
  • 修复 IUpdateJoin 联表更新表达式赋值解析报错;
  • 修复 MySqlProvider .NetFramework 下可能报初始化类型错误;
  • 修复 自动分表 IUpdate/IDelete AsTable 不生效的问题;
  • 修复 FromQuery + WithTempQuery 嵌套查询多层后别名问题;#1510
  • 修复 WithTempQuery + Oracle 分页问题;#1519
  • 修复 Oracle 插入 LONG RAW 类型的问题;
  • 修复 BulkCopyUpdate 临时表名大小写问题;
  • 优化 IUpdate 批量 case when 同值的 SQL 生成;#1393
FreeSql - v3.2.695

Published by 2881099 over 1 year ago

  • 增加 虚谷数据库 FreeSql.Provider.Xugu;
  • 增加 IInsert IgnoreInsertValueSql 方法临时忽略 InsertValueSql 设置;
  • 增加 部分 LocalExecuteScalar Aop.CommandAfter 事件;#1481
  • 增加 QuestDB SampleBy 对准日历参数;
  • 增加 动态操作创建实体API,fsql.CodeFirst.DynamicEntity;(感谢 Daily 贡献)
  • 修复 OracleOledb 引起的读取类型问题;
FreeSql - v3.2.693

Published by 2881099 over 1 year ago

  • 添加 IInsertOrUpdate 高性能插入或更新 SqlServer/MySql/Oracle/Pgsql/达梦/人大金仓;
  • 增加 IUpdate 高性能批量更新 Oracle/达梦/人大金仓;
  • 增加 TableInfo.SetAsTable 自动分表的设置;
  • 修复 SqlServer 自增 BulkUpdate bug;#1476
  • 修复 表达式树解析 string.Concat 多于3个时的 bug;
  • 修复 UpdateJoin null 错误;
  • 优化 UpdateJoin Set 固定值解析;
  • 优化 .Select<object>().WithSql(sql).ToList() 体验;
FreeSql - v3.2.692

Published by 2881099 over 1 year ago

  • 增加 IUpdate.Join 联表更新功能;(高风险操作,请谨慎使用)
  • 修复 InsertOrUpdateDict Oracle byte[] 长度判断问题;#1462
  • 修复 InsertDict 等字典操作在 SqlServer 下的问题;
  • 修复 ISelect<T> FromQuery 多表重载可能出现 null 报错;
FreeSql - v3.2.691

Published by 2881099 over 1 year ago

  • 增加 ISelect<T> FromQuery 重载多表嵌套;
  • 增加 实体备注从 Description/Display/DisplayName 等特性兼容读取;
  • 增加 ISelectGrouping First 方法;
  • 增加 IInsertOrUpdate SetSource 重载方法;
  • 优化 WithTempQuery + ToList 使用子查询;
  • 优化 IInsertOrUpdate SetSource tempPrimary 自增的忽略插入;
  • 修复 Clickhouse 自动分表 where 条件分析问题;
  • 修复 DBFirst 延迟加载 ManyToOne 返回总是NULL;#1451
  • 修复 QuestDB CodeFirst AutoSubtableAttribute/ColumnAttribute判断bug
FreeSql - v3.2.690

Published by 2881099 over 1 year ago

  • 增加 [Navigate(xx, TempPrimary = xx)] 与非主键关联;(仅支持查询)
  • 修复 3.2.689/3.2.688 WithTempQuery DTO 映射查询遗留问题;
  • 优化 AsTable 自动分表,提供超始小时的设置;

v3.2.688 更新内容如下:

  • 增加 QuestDB 时序数据库支持;(感谢 Daily 贡献)
  • 修复 Array.Any OR 表达式树解析 bug;
  • 修复 GroupBy 之后 WithTempQuery 参数化时未传递的问题;
  • 修复 BulkUpdate 触发 Aop.AuditValue Insert 类型的问题;
  • 修复 Ado.ExecuteNonQuery 超时参数未生效的问题;#1441
  • 修复 Firebird CodeFirst 索引 DESC 问题;#1413
  • 优化 Firebird CodeFirst 迁移代码;
  • 优化 Firebird 表达式树位运算的适配解析;#1413
  • 优化 SqlServer timestamp 行版本的支持;#1412
  • 优化 pgsql15.0 部分类型兼容;#1436
  • 完善 Sqlite DbFirst 获取索引信息;#1425
  • 优化 适配达梦最新驱动;
  • 优化 IUpdate 组合更新方式;
  • 优化 IUpdate.Set(xx, null) 的情况;
  • 优化 ISelect<object> AsType 的父子类转换时的情况;#1427
  • 优化 支持动态操作 IncludeByPropertyName then.WhereDynamicFilter 操作;
  • 优化 WithTempQuery 场景的 DTO 映射查询;
FreeSql - v3.2.687

Published by 2881099 over 1 year ago

  • 修复 3.2.686 JsonMap bug;
  • 优化 参数化增加 ExpandoObject 支持;#1403
  • 优化 pgsql15.0 Version 版本号处理;
  • 优化 pgsql CodeFirst Syncsture CREATE INDEX code;