232 Commits

Author SHA1 Message Date
28810
769c1f020c - 修复 Where(a => bool && id > 0) bool 未解析正确的 bug;
> (之前大多数类似的表达都能解析,这次是一个特殊情况)
2019-11-17 21:01:49 +08:00
28810
7c42c67797 - 修复 MapType 属性的表达式解析 数组.Contains 得到是映射之前的值 bug;
- 修复 MapType 属性 与 IncludeMany 变异功能未映射处理的 bug;
2019-11-17 17:14:00 +08:00
28810
6c1d532d09 - 优化 ManyToMany 中间表不需要指明 [Column(IsPrimary = true)] 特性; 2019-11-16 00:10:04 +08:00
28810
17241be66d debug UnitOfWork Destructor #131 2019-11-15 16:36:34 +08:00
28810
7d1f9b126f debug Destructor #131 2019-11-15 13:25:14 +08:00
28810
b5efb387bd - 完善 所有参数化 object parms 可使用 IDictionary 类型传入; 2019-11-13 20:21:49 +08:00
28810
dda7c8bc9c - 增加 AsTable 和 Repository 分表时的自动迁移分表功能;
- 增加 ICodeFirst.SyncStructure(Type entityType, string tableName) 指定表名来迁移实体;
```csharp
fsql.CodeFirst.SyncStructure(typeof(Log), "Log_1"); //迁移到 Log_1 表
fsql.CodeFirst.SyncStructure(typeof(Log), "Log_2"); //迁移到 Log_2 表
```
2019-11-13 19:57:44 +08:00
28810
be77060ea8 - 增加 MySql 特有功能 On Duplicate Key Update 功能; 2019-11-11 22:08:21 +08:00
28810
f2cb3bd5fe - 修复 ISelect .From 方法之前使用 .Include 方法,导致生成的多表 JOIN 位置错误的 bug;#128 2019-11-10 20:53:39 +08:00
28810
08bd86ae40 new 重新属性的反射优化 2019-11-10 19:13:03 +08:00
28810
8a9a50ecb7 - 优化 实体类重写属性 new 如果类型与基类不一致,无法使用的问题; 2019-11-10 12:18:16 +08:00
28810
0c341360b7 - 增加 SqlServer ISelect.WithLock 扩展方法,实现 with(nolock) 查询;
- 增加 SqlServer IFreeSql.SetGlobalSelectWithLock 扩展方法,实现全局设置 with(nock) 查询;
- 移除 Aop.ToList;
- 移除 Aop.Where;
2019-11-06 13:58:19 +08:00
28810
ed2a1e3bd3 - 调整 ToList(a => new Dto { id = 1, title = a.xx.Title}),之前只映射 id、title,现在是先映射 Dto 所有属性,再映射 id、title; 2019-11-04 13:01:52 +08:00
28810
21b4b0d5d3 - 增加 ISelect ToDelete/ToUpdate 方法,实现更复杂的删除/更新操作; 2019-10-30 20:35:42 +08:00
28810
db7fe82403 - 移除 IUpdate/IDelete WhereExists 方法; 2019-10-30 18:00:13 +08:00
28810
97351a4e6e - 优化 Aop.AuditValue 审计过的值,IUpdate.UpdateColumns 即使不指定该列也会更新; 2019-10-29 09:55:54 +08:00
28810
b97156b482 - 增加 IFreeSql.GlobalFilter 全局过滤器;
- 移除 TableAttribute.SelectFilter 功能;
2019-10-24 02:17:22 +08:00
28810
de8cf9e17d - 增加 .Net Framework 4.0 的支持,出于环境考虑 .Net Framework 4.0 不支持异步方法;
- 增加 IFreeSql.Insert<T>(IEnumerable<T1> source) 方法;
2019-10-21 15:14:18 +08:00
28810
615023f012 - 修复 postgresql 12 移除 pg_attrdef.adsrc 列,导致 CodeFirst 方法失败的 bug;
- 增加 Aop.ConfigEntity 属性 ModifyIndexResult 现实 IndexAttribute 的设置;
2019-10-14 13:21:47 +08:00
28810
e823f9dcd0 - 增加 FreeSql.DbContext 实体对象的变化事件;
> 文档:https://github.com/2881099/FreeSql/wiki/DbContext#%E5%AE%9E%E4%BD%93%E5%8F%98%E5%8C%96%E4%BA%8B%E4%BB%B6
- 补充 Aop.CurdBefore 事件参数 Table 实体类型的元数据;
2019-10-12 01:02:42 +08:00
28810
741c558d91 - 续上优化 Enum 默认值容错 2019-10-09 16:58:33 +08:00
28810
1f2d4abdc7 - 优化 枚举属性的默认值容错,枚举下标不存在 0 的时候,mysql 迁移结构默认值报错; 2019-10-09 16:56:24 +08:00
28810
53d4332bc5 - 增加 List\<T1\> 扩展方法 IncludeMany,实现从已知的内存 List 数据,进行和 ISelect.IncludeMany 相同功能的贪婪加载; 2019-10-07 21:14:18 +08:00
28810
78fded3f8e - 增加 IndexAttribute 特性,自动迁移索引,以及对应的 FluentApi 方法;
- 移除 ColumnAttribute.Unique 属性设置,改为 IndexAttribute 特性设置唯一键;
2019-10-03 04:31:04 +08:00
28810
6ca226a8e4 - 增加 ColumnAttribute 可插入(CanInsert)、可更新(CanUpdate);#99 2019-09-26 15:45:40 +08:00
28810
c747d39db8 - 增加 NavigateAttribute 特性对应的 Fluent 功能;#96 2019-09-26 11:51:50 +08:00
28810
5acf0b9eb4 - 优化 IUpdate.IgnoreColumns/UpdateColumns 可对属性名,或字段名做设置;#95 2019-09-23 21:58:30 +08:00
28810
7c281ce004 - 优化 忽略 List\<T\> 作为 Curd 类型操作; 2019-09-21 23:19:37 +08:00
28810
dcf1da36d4 ## v0.9.18
- 增加 PostgreSQL 的 Odbc 访问提供,相比 FreeSql.Provider.PostgreSQL 支持的类型更少;
- 增加 通用的 Odbc 访问提供,不能迁移实体到数据库,不能 Skip 这样来分页,理论上能 crud 所有 odbc 数据库;
2019-09-21 00:48:34 +08:00
28810
f434418b2c ## v0.9.17 (ODBC)
- 增加 FreeSql.Provider.Odbc,实现 Oracle/SqlServer/MySql 的 Odbc 访问提供;
- 增加 FreeSqlBuilder.UseConnectionString 参数 providerType,可解决因包版本冲突时,可能无法反射获得 FreeSql.Provider 对应的类型,通常这个参数不需要设置;
- 优化 MaxLength 特性,当指定为 -1 时 DbType 会分别映射类型 text/nvarchar(max)/nvarchar2(4000);
2019-09-19 23:14:30 +08:00
28810
62a095df8f v0.9.13
- 增加 FreeSql.Extensions.JsonMap 扩展包,实现快速将对象映射为json字符串的方法;
- 优化 表达式解析未实现的错误提醒,如 $"";
2019-09-13 00:23:52 +08:00
28810
564e1951d8 - 增加 ISelect.ToChunk 实现分块查询数据,减少数据过大时内存占用; 2019-09-10 16:01:01 +08:00
28810
e0a23accb0 v0.9.10 #89 2019-09-10 09:29:12 +08:00
28810
fa61d8a3d1 - 移除 FreeSql.Repository 扩展方法 FromRepository;
- 调整 ISelect.AsTable 规则,每一次使用将增加 UNION ALL 查询;
- 优化 AsTable UseSyncStructureToLower/ToUpper 设置,兼容 AsTable((t,o) => "(select * from tb)"); #89
2019-09-10 09:26:08 +08:00
28810
fe4874989c - 修复 AsTable 不受 UseSyncStructureToLower/ToUpper 设置的 bug;#89 2019-09-09 19:02:38 +08:00
28810
bcc154ee43 - 增加 AsTable 多次,可查询分表后的多个子表记录,以 UNION ALL 形式执行; 2019-09-09 18:30:55 +08:00
28810
ebec260d97 - 调整 ExpressionTree 从 DateTime 转化 DateTimeOffset 使用 ticks;#87 2019-09-09 15:20:57 +08:00
28810
915af57baa - 修复 属性无set自动忽略的bug;
- 优化 ISelect`1.Include之后ToList参数includeNestedMembers默认为true;
2019-09-09 15:11:25 +08:00
28810
415e09f0da - 完善 ExpressionTree DateTime/DateTimeOffset 数据转换测试; 2019-09-06 19:07:32 +08:00
28810
a266cdb103 - 修复 【重大 bug】 批量更新 bug,当字段中某个值为 null,其他字段也更新成了 NULL; 2019-09-06 17:42:25 +08:00
28810
d9cb932fae - 优化 MapType DateTime/DateTimeOffset 类型转换互通; 2019-09-06 16:07:28 +08:00
28810
d105041858 - 优化 表达式对整数除法的处理,解析为整除; 2019-09-06 14:48:37 +08:00
28810
d51aef2aa9 add test 2019-09-06 13:29:15 +08:00
28810
6e75a8cebc - 增加 创建表时指定字段位置,如:[Column(Position = 1],可为负数即反方向位置; 2019-09-04 22:52:05 +08:00
28810
96796106d5 - 修复 导航属性配置,循环关系的情况下可能导致的 bug; 2019-09-01 18:03:33 +08:00
28810
de6e99c710 - 修复 导航属性配置和Aop冲突的 bug; 2019-09-01 11:12:52 +08:00
28810
baf6d768a4 - 修复 Aop.AuditValue 与 FreeSql.Repository 主键状态管理的冲突; 2019-08-31 03:00:17 +08:00
28810
ce392689d7 - 修复 MapType 表达式解析时的层级 bug; 2019-08-29 21:51:01 +08:00
28810
2db48bbcf9 - 增加 ISelect.First<Dto>() 方法; 2019-08-29 14:55:42 +08:00
28810
33612bd8bd - 增加 Aop.AuditValue 事件,在插入/更新数据时审计属性值; 2019-08-25 18:19:31 +08:00