28810
|
9b80f8cd53
|
- 优化 IInsert.InsertIdentity 可插入自增属性;
|
2019-07-29 16:35:36 +08:00 |
|
28810
|
4609c910dd
|
- 优化 IUpdate.Set 表达式传入匿名类更新多个字段;
|
2019-07-26 14:30:03 +08:00 |
|
28810
|
b37919be80
|
- 增加 ISelect.WhereCascade 实现多表查询时,向每个表中附加条件;
- 增加 Examples 项目 base_entity,利用 BaseEntity 实现简洁的数据库操作;
|
2019-07-19 18:35:58 +08:00 |
|
28810
|
250d13c330
|
完善 Distinct 注释
|
2019-07-03 09:56:22 +08:00 |
|
28810
|
2a61415f06
|
- 修复 ISelect.From<T2, T2> 当传入相同的两个实体类型,可能导致内部 Join 无法匹配的 bug;
- 增加 IGroupSelect ToSql(string) 重载方法;
|
2019-07-02 18:15:43 +08:00 |
|
28810
|
f8c3608fda
|
源代码改用vs默认格式化
|
2019-06-27 09:40:35 +08:00 |
|
28810
|
d1bd3170a5
|
- 优化 IUpdate.Set 支持 Set(a => new { Clicks = a.Clicks + 1, Time = DateTime.Now }) 指定多个字段更新的用法;
|
2019-06-19 12:07:06 +08:00 |
|
28810
|
16c6fc334b
|
- 增加 ISelect.OrderBy 重载,与 WhereIf 相同行为;
- 修复 Aop.ParseExpression 使用 FreeParse 方法死循环的 bug;
|
2019-06-06 12:12:43 +08:00 |
|
28810
|
f8e897e201
|
拆分 FreeSql 按需引用
|
2019-05-28 21:32:54 +08:00 |
|
28810
|
76baa5b9c0
|
- 增加 IncludeMany Take(5) 功能,实现每个子集合只取5条记录;
|
2019-05-17 20:40:06 +08:00 |
|
28810
|
defaa224fb
|
- 增加 变异的 IncludeMany,即使不是导航属性,也可以贪婪加载;
|
2019-05-14 18:07:27 +08:00 |
|
28810
|
4481064f4e
|
Include 贪婪加载第一版,已通过集合的导航数据加载,包括 OneToMany/ManyToMany
|
2019-05-11 06:17:09 +08:00 |
|
28810
|
c293a1fb37
|
- 增加 ToList<Dto>() 方法,作用与 ToList(a => new Dto()) 相同;
|
2019-05-09 17:02:17 +08:00 |
|
28810
|
e970bd731b
|
取消 FreeSql.Interface 调整
|
2019-05-07 22:13:15 +08:00 |
|
28810
|
22a6c3d93e
|
- 调整 命名空间,归纳 FreeSql.Interface;
|
2019-05-07 20:20:38 +08:00 |
|
28810
|
59b1b7220d
|
- 增加 linq to sql 的查询语法,以及单元测试;
|
2019-05-07 19:09:19 +08:00 |
|
28810
|
7a625be8c9
|
替换 pageIndex 为 pageNumber
|
2019-05-06 23:25:09 +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
|
f5a292ef45
|
IFreeSql 增加 IDisposable
|
2019-04-29 18:22:03 +08:00 |
|
28810
|
d49be984bd
|
配置 xmlDoc
|
2019-04-28 15:46:37 +08:00 |
|
28810
|
02ab4949c0
|
- 优化 ISelect.GroupBy 查询,增加 .Value 实现聚合源字段查询,ToList(a => a.Sum(a.Value.Score));
- 增加 Expression string.Concat;
|
2019-04-25 12:34:09 +08:00 |
|
28810
|
e2d33e943f
|
- 修复 ISelect.ToList(true) 无效的 bug;
- 增加 IAop.ConfigEntity 配置实体特性,可实现使用其他 ORM 的实体特性,#36;
|
2019-04-24 15:09:32 +08:00 |
|
28810
|
9dd85f33f9
|
## v0.5.3
- 增加 ISelect.ToList(true) 自动贪婪加载 LeftJoin/InnerJoin/RightJoin 导航数据;#35
- 增加 IAdo.Query<T1, T2 ...> 多结果集查询;
- 增加 IAdo.ExecuteDataSet 多结果集查询;
- 优化 未设置实体属性 set 的将被自动过滤 IsIgnore;
|
2019-04-22 18:34:05 +08:00 |
|
28810
|
1da596db01
|
- 增加 IAdo.Query<T1, T2 ...> 多结果集查询;
- 增加 IAdo.ExecuteDataSet 多结果集查询;
|
2019-04-22 12:06:18 +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
|
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 |
|
28810
|
9245909d79
|
补充 开放 IUpdate UpdateColumns 方法功能;
现实更新实体时,只更新指定的列(与 IgnoreColumns 对应);
|
2019-04-15 17:54:45 +08:00 |
|
28810
|
2714ff360d
|
## v0.4.13
- 优化 MySql 日期类型精确至毫秒;
- 增加 Distinct 查询前去重数据;
|
2019-04-12 20:02:58 +08:00 |
|
28810
|
4686d7e0af
|
- 增加 .First()/.FirstAsync() 指定字段查询的重载方法;
- 调整 FreeSql.Repository 直接引用 FreeSql.DbContext 内的仓储实现;
- 补充 单独针对 MySql 枚举类型的单元测试;
|
2019-04-11 17:34:21 +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
|
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 |
|
2881099
|
bf72bf423c
|
## v0.3.25
- 修复 全局过滤器一个赋值低级错误;
- 增加 IFreeSql<TMark> 空接口,现实多个 IFreeSql 注入使用,使用泛型标识区分;
|
2019-03-23 02:11:18 +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 |
|
28810
|
a0cebe229e
|
add Examples/orm_vs
|
2019-03-19 13:35:25 +08:00 |
|
28810
|
abb7402b36
|
- 增加 ISelect.ToDataTable 系列方法;
- 增加 无参数化命令执行,可配置全局 ICodeFirst.IsNoneCommandParameter、或临时 IInsert/IUpdate.NoneParameter() 便于调试;
- 关闭 自动同步结构功能,避免线上环境误操作;
- 优化 IInsert 批量插入容易导致 values 过多、或参数化过多的问题,5个数据库均已优化;
|
2019-03-14 02:24:15 +08:00 |
|
28810
|
1fa6c9bfc4
|
- 增加 ISelect.ToDataTable 系列方法;
- 增加 无参数化命令执行,便于调试;
|
2019-03-13 18:24:54 +08:00 |
|
28810
|
dae8eb7a67
|
v0.3.12 增加 ICodeFirst.IsConfigEntityFromDbFirst,若无配置实体类主键、自增,可从数据库导入;
|
2019-03-11 19:00:44 +08:00 |
|
28810
|
4f66c3b9eb
|
## v0.3.11
- 增加 ISelect、IInsert、IUpdate、IDelete WithTransaction 方法,将事务对象暴露给外部;
- 增加 IAdo ExecuteXxx 系列方法重载,支持事务对象的传入;
|
2019-03-11 17:26:27 +08:00 |
|
28810
|
428220e754
|
## v0.1.13
- 修改 连接池内部 Ping Timeout 值暂定 5秒;
- 优化 初始化时若数据库超时,则放弃预热;
- FreeSql.Repository 下增加 ISelect.FromRepository 扩展方法,实现分表的多表查询;
- 增加 FreeSql.Repository Autofac 泛型注入,可利用实现全局过滤+分表分库;
- 补充 GuidRepository 插入数据时,根据 filter 参数设定进行数据验证;
|
2019-03-09 02:58:23 +08:00 |
|
28810
|
cd1e6e4a7b
|
- 升级 nuget 依赖包;
- 增加 .netframework 4.6.1 示范项目;
- PostgreSQL 连接池大小默认值改为 50;
- ISelect 增加 Any/AnyAsync(Expression),为的少写一个 Where;
|
2019-03-07 15:15:42 +08:00 |
|
28810
|
90f69f1b57
|
FreeSql ISelect/IUpdate/IInsert/IDelete 增加 AsTable 方法,实现分表
|
2019-03-05 21:04:52 +08:00 |
|
28810
|
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 |
|
28810
|
f034d4194d
|
v0.1.5
- 增加 IsSyncStructureToUpper 参数,以便适应 Oracle 大小写使用习惯;
- FreeSql.Repository 增加 GuidRepository 类,适用 Insert 方法无须返回插入的数据;
- FreeSql.Repository 增加 IFreeSql 扩展方法 GetRepository、GetGuidRepository;
|
2019-02-28 17:31:04 +08:00 |
|
28810
|
9d87c69fb2
|
v0.1.3
|
2019-02-25 10:12:33 +08:00 |
|
28810
|
fb1871e558
|
ICodeFirst add GetConfigEntity
|
2019-02-22 09:16:07 +08:00 |
|