28810
|
a92c279c72
|
- 修复 Ado.Query 查询字段重复时报错;#162 #165 #161 - 增加 FreeSql.Provider.MsAccess 支持 Access 数据库操作,已通过 2003/2007 版本测试;
|
2019-12-24 06:16:52 +08:00 |
|
28810
|
ab1d0a2cb5
|
- 增加 IInsert/IUpdate BatchOptions 方法指定批量插入的设置;
|
2019-12-20 19:47:43 +08:00 |
|
28810
|
206d7bdbe0
|
- 增加 达梦数据库 ODBC 适配,和单元测试,支持 CodeFirst 模式开发;
|
2019-12-09 21:25:01 +08:00 |
|
28810
|
20e06ef3a2
|
- 修复 批量插入 Values 数量限制超出的判断;
|
2019-11-25 22:14:09 +08:00 |
|
28810
|
5961479f2a
|
- 优化 ExpressionCallContext 可设置、附加参数化对象;
|
2019-11-23 01:55:30 +08:00 |
|
28810
|
e9a8ad70a1
|
- 增加 ICodeFirst.IsGenerateCommandParameterWithLambda 选项,开启表达式解析的命令参数化;
- 增加 ExpressionCallContext 自定义函数上下文档 DbParameter 属性;
- 修复 IncludeMany(a => a.x1.x2.Childs) 当 x1, x2 为 null 的报 null 错误;
|
2019-11-22 21:55:36 +08:00 |
|
28810
|
12be7f0051
|
- 调整内部参数化处理逻辑,为以后 Where 条件参数化做准备;
|
2019-11-22 05:58:17 +08:00 |
|
28810
|
8c5d5ddedc
|
- 增加 UnitOfWork 静态属性 DebugBeingUsed,用于生产环境监视正在使用中的事务;
|
2019-11-21 21:55:04 +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
|
0c341360b7
|
- 增加 SqlServer ISelect.WithLock 扩展方法,实现 with(nolock) 查询;
- 增加 SqlServer IFreeSql.SetGlobalSelectWithLock 扩展方法,实现全局设置 with(nock) 查询;
- 移除 Aop.ToList;
- 移除 Aop.Where;
|
2019-11-06 13:58:19 +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
|
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
|
6ca226a8e4
|
- 增加 ColumnAttribute 可插入(CanInsert)、可更新(CanUpdate);#99
|
2019-09-26 15:45:40 +08:00 |
|
28810
|
5acf0b9eb4
|
- 优化 IUpdate.IgnoreColumns/UpdateColumns 可对属性名,或字段名做设置;#95
|
2019-09-23 21:58:30 +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
|
a266cdb103
|
- 修复 【重大 bug】 批量更新 bug,当字段中某个值为 null,其他字段也更新成了 NULL;
|
2019-09-06 17:42:25 +08:00 |
|
28810
|
baf6d768a4
|
- 修复 Aop.AuditValue 与 FreeSql.Repository 主键状态管理的冲突;
|
2019-08-31 03:00:17 +08:00 |
|
28810
|
33612bd8bd
|
- 增加 Aop.AuditValue 事件,在插入/更新数据时审计属性值;
|
2019-08-25 18:19:31 +08:00 |
|
28810
|
b57d35ae9b
|
- 增加 Aop.AuditValue 事件,在插入/更新数据时审计属性值;
|
2019-08-25 18:13:02 +08:00 |
|
28810
|
8e33d80b5a
|
- 修复 Pgsql 批量更新使用 NoneParameter 后日期类型的语法 bug;
|
2019-08-23 18:17:17 +08:00 |
|
28810
|
bf4f0886b4
|
- 修复 IUpdate.Set 表达式传入匿名类更新多个字段,后表达式未加[]或""的 bug;
- 修复 Aop.ConfigEntityProperty 操作导航属性后,执行 insert 语句认为它也是字段的 bug;
|
2019-08-08 09:15:03 +08:00 |
|
28810
|
4609c910dd
|
- 优化 IUpdate.Set 表达式传入匿名类更新多个字段;
|
2019-07-26 14:30:03 +08:00 |
|
28810
|
619c57c254
|
- 修复 Insert/Update 大批量操作分批执行时,如果外部使用了 Ado.Transaction,没有使用线程事务对象,而是创建了新事务的 bug;
|
2019-07-04 14:13:15 +08:00 |
|
28810
|
b04a4e7266
|
- 修复 Insert ClearData 重复利用的 bug(使用 IgnoreColumns 进行大批量插入时会发生);
|
2019-07-03 16:38:29 +08:00 |
|
28810
|
f8c3608fda
|
源代码改用vs默认格式化
|
2019-06-27 09:40:35 +08:00 |
|
28810
|
a708062c97
|
- 修复 IUpdate.Set 表达式解析的 bug;
|
2019-06-24 17:03:39 +08:00 |
|
28810
|
d1bd3170a5
|
- 优化 IUpdate.Set 支持 Set(a => new { Clicks = a.Clicks + 1, Time = DateTime.Now }) 指定多个字段更新的用法;
|
2019-06-19 12:07:06 +08:00 |
|
2881099
|
fe6d632624
|
修复批量插入/更新大量数据时,未使用NoneParameter,会导致部分未执行的bug;
|
2019-06-07 18:23:51 +08:00 |
|
28810
|
b13b501131
|
- 修复 IUpdate.IngoreColumns/UpdateColumns 若实体指定别名后,可能无效的bug;
|
2019-05-30 17:11:55 +08:00 |
|
28810
|
f8e897e201
|
拆分 FreeSql 按需引用
|
2019-05-28 21:32:54 +08:00 |
|
28810
|
98d120120b
|
- 补充 IUpdate.Set(a => a.Click == 10),简化 Set 更新单个字段表达式;
|
2019-05-20 16:54:11 +08:00 |
|
28810
|
b921231cb7
|
- 补充 IFreeSql 增加与实现 IDisposable 接口(依然要保持单例的使用习惯);
- 增加 CurdBefore、CurdAfter AOP 方法,可监控执行增删查改;
- 增加 SyncStructureBefore、SyncStructureAfter AOP 方法,可监控CodeFirst迁移;
|
2019-05-06 21:02:15 +08:00 |
|
28810
|
33e992d96b
|
- 增加 OnInserted、OnUpdated、OnDeleted、OnSelected 等 AOP 方法;
|
2019-05-05 18:17:04 +08:00 |
|
28810
|
aeee8cc34c
|
- 补充 MapType,Column.MapType 类型映射,可将 enum 映射为 int/string 等 #19 #42;
- 优化 PostgreSQL jsonb 类型使用习惯;
|
2019-04-27 01:08:34 +08:00 |
|
28810
|
24df5d6107
|
- 增加 Column.MapType 类型映射,可将 enum 映射为 int/string 等;
|
2019-04-26 06:30:30 +08:00 |
|
28810
|
bada8ad3cc
|
## 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 延时属性时,并且传递实体查询时条件无效;
|
2019-04-17 00:52:02 +08:00 |
|
28810
|
9245909d79
|
补充 开放 IUpdate UpdateColumns 方法功能;
现实更新实体时,只更新指定的列(与 IgnoreColumns 对应);
|
2019-04-15 17:54:45 +08:00 |
|
28810
|
a4678ebdc3
|
补充 IAdo 相关方法
|
2019-04-10 23:31:34 +08:00 |
|
28810
|
d1a07dc888
|
- 修复 MySql 枚举表达式 == 解析成数字的 bug;
- 增加 Connection 对象扩展方法,实现像 Dapper 的使用习惯;
|
2019-04-10 21:19:32 +08:00 |
|
28810
|
69909fdb8a
|
v0.4.5(清明版本)
- 优化 IFreeSql.Transaction 可嵌套连续使用,之前会死锁;
- 修复 导航属性的关系,误将 ManyToOne 设置成了 OneToMany;
- 补充 DbFirst GetTablesByDatabase 获取表备注;
- 补充 ISelect.ToList(a => new XxxDto { XxxId = a.Id, ... }) 支持,之前只能支持匿名类;
- 补充 扩展 IUpdate.Set(a => a.Title + "111") 指定字段在原基础上增加值的范围,之前只支持数字类型的累加;
|
2019-04-03 18:41:32 +08:00 |
|
28810
|
1132a094ae
|
优化 IFreeSql.Transaction 可嵌套连续使用,之前会死锁
|
2019-04-01 16:15:59 +08:00 |
|
28810
|
df8845e5b1
|
## v0.3.27
- 增加 行级锁功能,适用修改实体;
- 增加 FreeSql.Repository 默认依赖注入的方式,同时保留原有 Autofac;
- 优化 FreeSql.Repository Insert 逻辑,参考了 FreeSql.DbContext;
- 优化 FreeSql.IUpdate 参照 IInsert 对大批量更新,拆分执行;
- 修复 FreeSql.IInsert ClearData 重复利用的 bug(使用 IgnoreColumns 进行大批量插入时会发生);
|
2019-03-29 21:28:43 +08:00 |
|
28810
|
4edfb04010
|
- 增加 IUpdate.WhereCaseSource 方法,实现批量修改时的条件判断;
- 增加 FreeSql.DbContext 行级锁;
|
2019-03-29 12:58:58 +08:00 |
|
28810
|
a9e34f852a
|
## v0.3.24
- 增加 GroupBy 分页方法;
- 修复 Insert 参数化命名 bug,当存在 Id Id2 时发生;
- 优化 Insert/Delete/Update 对象执行完后清理数据,以备多次使用;
|
2019-03-22 21:54:35 +08:00 |
|
28810
|
7f3aa84ffe
|
## v0.3.22
- 优化 导航属性 ManyToOne 名称查找规则;
- 增加 IFreeSql.Aop 属性,未来所有拦截方法都在这里,第一期支持如下:
* 监控 ToList 返回的的数据,用于拦截重新装饰;
* 监视 Where,包括 select/update/delete,返回值 true 时可使上层不被执行;
* 可自定义解析表达式;
- 增加 ISelect.TractToList,用于单次跟踪或审核实体;
- 优化 FreeSql.DbContext SaveChanges;
|
2019-03-22 00:26:08 +08:00 |
|
28810
|
c20a0bbd54
|
## v0.3.21
- 增加 IUpdate IgnoreColumns 重载方法,支持传入字符串数组忽略修改;
- 完善 FreeSql.DbContext,支持对象操作 + SaveChanges 最后保存操作;
|
2019-03-21 05:24:50 +08:00 |
|