Skip to content

Releases: dotnetcore/FreeSql

v0.5.23

28 May 11:57
Compare
Choose a tag to compare

v0.5.23

  • 补充 IUpdate.Set(a => a.Click == 10),简化 Set 更新单个字段表达式;
  • 优化 延时导航属性的错误提醒,当无法匹配错误,转到重写类 get 时抛出(实现延时导航属性,与普通导航一起使用);
  • 优化 ICodeFirst.SyncStructure 错误提示,当使用不可迁移实体时;
  • 优化 实体数据属性 DbDefaultValue 处理;
  • 修复 Expression 表达式解析 Convert 的判断 bug;

v0.5.21

  • 修复 IncludeMany ManyToMany,若中间表未使用 延时加载 属性功能时,出现的 bug;
  • 增加 IncludeMany Take(5) 功能,实现每个子集合只取5条记录;

v0.5.18

14 May 01:35
Compare
Choose a tag to compare

v0.5.18

  • 增加 ISelect.Include 贪婪加载第一版,已通过集合的导航数据加载,包括 OneToMany/ManyToMany;
  • 修改 IncludeMany ManyToMany ET 缓存的 bug;
  • 完善 IncludeMany 联合键处理;
  • 完善 Include/IncludeMany 单元测试;
  • 修复 Include 延时加载 ManyToOne/OneToOne,当值为 null 时,仍然会查询一次数据;
  • 修改 Query/ToList 混合使用时,可能导致的 ET 缓存 bug;
  • 修改 Query 查询的实体设置了 IsIgnore 时,可能出现 ET 读取位置偏移 bug;
  • 增加 变异的 IncludeMany,即使不是导航属性,也可以贪婪加载,Wiki

v0.5.12

  • 优化 连接预热策略:min pool size 不设置或 <= 0,则默认预热 5个;也可以设置 1;
  • 取消 MySql CodeFirst 对表字符集的设置;
  • 增加 ToList() 方法,作用与 ToList(a => new Dto()) 相同;

v0.5.11

09 May 04:26
Compare
Choose a tag to compare

v0.5.11

  • 修复 复杂的表达式解析 OR 的括号 bug;
  • 增加 linq to sql 的查询语法,以及单元测试,wiki
  • 补充 IFreeSql 增加与实现 IDisposable 接口(依然要保持单例的使用习惯);
  • 增加 CurdBefore、CurdAfter AOP 事件,可监控执行增删查改;
  • 增加 SyncStructureBefore、SyncStructureAfter AOP 事件,可监控CodeFirst迁移;

v0.5.7

28 Apr 14:02
Compare
Choose a tag to compare

v0.5.7

  • 补充 nuget 包增加 xmlDoc 编译,原来使用者之前一直没有注释;
  • 调整 Column.Unique 定义规则,解决同一属性不可配置多次的问题;
  • 优化 兼容不同数据库 bool 的表达式解析,如:Where(a => a.Bool)、Where(a => !a.Bool);

v0.5.5

26 Apr 17:24
Compare
Choose a tag to compare

v0.5.5

  • 增加 Column.MapType 类型映射,可将 enum 映射为 int/string 等,文档
  • 增加 Column.Unique 唯一键,多个属性指定相同的标识,代表联合键,#42
  • 增加 Expression string.Concat,#39
  • 补充 Expression IEnumerable.Contains 的支持,之前只能数组或IList;
  • 补充 IDbFirst GetTableByDatabase 返回 uk/fk/index 名称,以便迁移;
  • 补充 MapType/Unique 单元测试;
  • 优化 PostgreSQL jsonb 类型使用习惯;

v0.5.4

25 Apr 09:44
e26a124
Compare
Choose a tag to compare

v0.5.4(青年版)

  • 修复 Expression OrElse 两侧括号丢失的 bug;
  • 修复 Expression DateTime 类型 CompareTo 在 MySql/SqlServer 下的 bug;
  • 修复 ISelect.ToList(true) 无效的 bug;
  • 增加 IAop.ConfigEntity 配置实体特性,可实现使用其他 ORM 的实体特性,#36
  • 优化 ISelect.GroupBy 查询,增加 .Value 实现聚合源字段查询,ToList(a => a.Sum(a.Value.Score)),#38
  • 增加 Expression string.Concat,#39
  • 补充 Expression IEnumerable.Contains 的支持,之前只能数组或IList;

v0.5.3

  • 增加 ISelect.ToList(true) 贪婪加载 LeftJoin/InnerJoin/RightJoin 导航数据;
  • 增加 IAdo.Query<T1, T2 ...> 多结果集查询;
  • 增加 IAdo.ExecuteDataSet 多结果集查询;
  • 优化 未设置实体属性 set 的将被自动过滤 IsIgnore;

v0.5.2

  • 修复 SqlServer 工作单元 bug,需要同时设置 SqlCommand.Connection + Transaction;
  • 补充 测试与支持联合主键的自增;

v0.5.1(五一版)

  • 增加 ISelect/IInsert/IUpdate/IDelete.AsType 实现弱类型curd,如:Select<object>().AsType(实体类型);

  • 补充 ISelect.From<T2>;

  • 补充 ExpressionTree 单元测试;

  • 优化 ToList(a => new Dto()),会按优先级查询 Join 实体属性;

  • 补充 IDelete/ISelect/IUpdate WhereDynamic 方法,实现 dywhere 条件;

  • 修复 WhereObject 内部方法,当开启 Lazy 延时属性时,并且传递实体查询时条件无效;

  • 补充 实现表达式转换类型的解析,如:Select<object>().Where(a => (a as 实体类型).Id == 0);

  • 完善 ExpressionTree 基础数据类型 TryParse 使用与单元测试;

  • 优化 ManyToMany 中间实体未配置主键时,自动配置联合主键;

  • 修复 Expression.And 的使用问题;

  • 修复 IsIgnore 过滤字段后,查询的错误;

  • 修复 ISelect2 以上 WhereIf 条件作用反了 bug;