Commit Graph

110 Commits

Author SHA1 Message Date
1da596db01 - 增加 IAdo.Query<T1, T2 ...> 多结果集查询;
- 增加 IAdo.ExecuteDataSet 多结果集查询;
2019-04-22 12:06:18 +08:00
191a15fb42 自动贪婪加载 LeftJoin/InnerJoin/RightJoin 数据 2019-04-20 01:21:57 +08:00
e3c0f615f9 修复 SqlServer 工作单元 bug #23
需要同时设置 SqlCommand.Connection + Transaction
2019-04-19 13:50:19 +08:00
acc1754e2e 修复 ISelect2 以上 WhereIf 条件作用反了 bug 2019-04-18 13:54:11 +08:00
8d266a556e 修复 IsIgnore 过滤字段后,查询的错误; 2019-04-18 11:21:12 +08:00
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
0d2191ca85 ## v0.4.16
- 增加 ISelect.AsType 实现弱类型查询,配合 Select<object>().AsType(实体类型);
- 补充 ISelect.From<T2>;
- 补充 ExpressionTree 单元测试;
- 优化 ToList(a => new Dto()),会按优先级查询 Join 实体属性;
2019-04-16 22:48:11 +08:00
9245909d79 补充 开放 IUpdate UpdateColumns 方法功能;
现实更新实体时,只更新指定的列(与 IgnoreColumns 对应);
2019-04-15 17:54:45 +08:00
2714ff360d ## v0.4.13
- 优化 MySql 日期类型精确至毫秒;
- 增加 Distinct 查询前去重数据;
2019-04-12 20:02:58 +08:00
4686d7e0af - 增加 .First()/.FirstAsync() 指定字段查询的重载方法;
- 调整 FreeSql.Repository 直接引用 FreeSql.DbContext 内的仓储实现;
- 补充 单独针对 MySql 枚举类型的单元测试;
2019-04-11 17:34:21 +08:00
a4678ebdc3 补充 IAdo 相关方法 2019-04-10 23:31:34 +08:00
d1a07dc888 - 修复 MySql 枚举表达式 == 解析成数字的 bug;
- 增加 Connection 对象扩展方法,实现像 Dapper 的使用习惯;
2019-04-10 21:19:32 +08:00
37aa5c613c 微调 2019-04-04 14:31:51 +08:00
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
1132a094ae 优化 IFreeSql.Transaction 可嵌套连续使用,之前会死锁 2019-04-01 16:15:59 +08:00
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
4edfb04010 - 增加 IUpdate.WhereCaseSource 方法,实现批量修改时的条件判断;
- 增加 FreeSql.DbContext 行级锁;
2019-03-29 12:58:58 +08:00
a9e34f852a ## v0.3.24
- 增加 GroupBy 分页方法;
- 修复 Insert 参数化命名 bug,当存在 Id Id2 时发生;
- 优化 Insert/Delete/Update 对象执行完后清理数据,以备多次使用;
2019-03-22 21:54:35 +08:00
1470aab6e3 ## v0.3.23
- 修复 因功能增加,导致联表查询出现的表达式函数解析 bug;
- 修复 因功能增加,导致查询数据时,ExpressionTree bug;
2019-03-22 03:52:12 +08:00
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
c20a0bbd54 ## v0.3.21
- 增加 IUpdate IgnoreColumns 重载方法,支持传入字符串数组忽略修改;
- 完善 FreeSql.DbContext,支持对象操作 + SaveChanges 最后保存操作;
2019-03-21 05:24:50 +08:00
d9de8e986b ## v0.3.20
- 修复 ToList 选择指定对象时,应附加所有字段查询返回;
- 修复 Lazy 延时类与实体关系冲突 bug;
- 修复 附加对象读取时,记录为空应该返回null,而不是返回非null(字段默认值)对象;
2019-03-20 22:47:21 +08:00
a0cebe229e add Examples/orm_vs 2019-03-19 13:35:25 +08:00
3974c35b2f 导航属性规则制约、ISelect 增加 AsSelect 用于集合属性进行子查询,自动联表查询,以及MySql实现与部分测试 2019-03-16 08:00:07 +08:00
2ab59201b0 ## v0.3.16
- 修复 IInsert/IUpdate.NoneParameter() 设成了反作用的 bug;
- 修复 IDbFirst.GetTablesByDatabase() 默认数据库 bool 判断 bug;
- 增加 FreeSql.Repository 之 IUnitOfWork 实现,[查看参数资料](https://github.com/2881099/FreeSql/wiki/%e5%b7%a5%e4%bd%9c%e5%8d%95%e5%85%83);
- 增加 FreeSql.Repository 继承实现的仓储注入;
```csharp
builder.RegisterFreeRepository(
    filter => filter.Apply<Song>("test", a => a.Title == DateTime.Now.ToString() +
        Thread.CurrentThread.ManagedThreadId),
    this.GetType().Assembly
);
```
2019-03-14 16:17:40 +08:00
abb7402b36 - 增加 ISelect.ToDataTable 系列方法;
- 增加 无参数化命令执行,可配置全局 ICodeFirst.IsNoneCommandParameter、或临时 IInsert/IUpdate.NoneParameter() 便于调试;
- 关闭 自动同步结构功能,避免线上环境误操作;
- 优化 IInsert 批量插入容易导致 values 过多、或参数化过多的问题,5个数据库均已优化;
2019-03-14 02:24:15 +08:00
1fa6c9bfc4 - 增加 ISelect.ToDataTable 系列方法;
- 增加 无参数化命令执行,便于调试;
2019-03-13 18:24:54 +08:00
aa2040a629 解决 SqlServer 批量添加参数最多 2100 个参数 2019-03-12 20:01:20 +08:00
acf6fa0391 - 修改 FreeSql.Repository Autofac 注入方式,真正的实现全局过滤功能;
- 增加 FreeSql.Repository DataFilter 属性;
```csharp
repos.DataFilter.Disable("test") 临时禁用,不影响全部;
repos.DataFilter.DisableAll()
repos.DataFilter.Enable("test")
repos.DataFilter.EnableAll()
repos.DataFilter.Apply("name", a => a.Id > 1) 附加新的过滤器
```
2019-03-12 16:33:10 +08:00
4f66c3b9eb ## v0.3.11
- 增加 ISelect、IInsert、IUpdate、IDelete WithTransaction 方法,将事务对象暴露给外部;
- 增加 IAdo ExecuteXxx 系列方法重载,支持事务对象的传入;
2019-03-11 17:26:27 +08:00
428220e754 ## v0.1.13
- 修改 连接池内部 Ping Timeout 值暂定 5秒;
- 优化 初始化时若数据库超时,则放弃预热;
- FreeSql.Repository 下增加 ISelect.FromRepository 扩展方法,实现分表的多表查询;
- 增加 FreeSql.Repository Autofac 泛型注入,可利用实现全局过滤+分表分库;
- 补充 GuidRepository 插入数据时,根据 filter 参数设定进行数据验证;
2019-03-09 02:58:23 +08:00
cd1e6e4a7b - 升级 nuget 依赖包;
- 增加 .netframework 4.6.1 示范项目;
- PostgreSQL 连接池大小默认值改为 50;
- ISelect 增加 Any/AnyAsync(Expression),为的少写一个 Where;
2019-03-07 15:15:42 +08:00
e66bca2fe7 v0.0.11 实现分表 2019-03-05 22:16:44 +08:00
90f69f1b57 FreeSql ISelect/IUpdate/IInsert/IDelete 增加 AsTable 方法,实现分表 2019-03-05 21:04:52 +08:00
a189b6abba - 优化插入判断主键,且为 Guid/Guid? 类型,并且值为 null/Guid.Empty 时,将插入的值变为 FreeUtil.NewMongodbId() 2019-03-04 20:45:19 +08:00
a2a3bb62d2 文字错误更正 2019-03-04 11:22:52 +08:00
30385d2e91 - FreeSql.Repository 增加 filter 参数,现实数据过滤 + 验证;
如:var postRepos = fsql.GetGuidRepository<Post>(a => a.TopicId == 1); postRepos CURD 方法都会以 lambad 条件作为查询或验证,Update/Insert验证错误时会抛出异常。
- ISelect 增加 First/FirstAsync;
2019-03-02 20:46:26 +08:00
9d87c69fb2 v0.1.3 2019-02-25 10:12:33 +08:00
a6b2b80d44 代码调整 2019-01-25 23:14:50 +08:00
74df67fc13 v0.0.11 修复IAdo.Query直接查询sql的bug 2019-01-25 20:23:14 +08:00
b83b86f528 update wiki 2019-01-23 16:41:11 +08:00
4bf8d60361 ICodeFirst 增加 ConfigEntity 方法,现实干净实体无特性的需求 2019-01-22 12:56:45 +08:00
a7896007a9 完成延时加载开发与测试,ICollection集合待支持 2019-01-19 19:11:15 +08:00
56d79c9696 ExpressionTree 优化告一段落 2019-01-19 15:21:04 +08:00
0068474992 Reflection 替换 ExpressionTree,单元测试已通过 2019-01-18 19:17:40 +08:00
863a9ee397 ExpreessTree替代反射缓存(1) 2019-01-17 19:34:25 +08:00
ed239835c6 反射+缓存性能优化,接近dapper 2019-01-15 18:36:43 +08:00
ec6d482321 update 2019-01-14 14:15:46 +08:00
5eb451fc76 pgsql DbFirst 完成未测试;oracle 适配进行中 2019-01-04 19:20:37 +08:00
96a944c534 in/not in 2018-12-29 11:53:39 +08:00