101 Commits

Author SHA1 Message Date
28810
5a69128807 - 优化 延时导航属性的错误提醒,当无法匹配错误,转到重写类 get 时抛出(实现延时导航属性,与普通导航一起使用); 2019-05-21 10:39:35 +08:00
28810
76baa5b9c0 - 增加 IncludeMany Take(5) 功能,实现每个子集合只取5条记录; 2019-05-17 20:40:06 +08:00
28810
79e21295c3 - 修改 Query/ToList 混合使用时,可能导致的 ET 缓存 bug; 2019-05-12 20:13:56 +08:00
28810
dbfc33fef5 - 修改 IncludeMany ManyToMany ET 缓存的 bug;
- 完善 IncludeMany 联合键处理;
- 完善 Include/IncludeMany 单元测试;
- 修复 Include 延时加载 ManyToOne/OneToOne,当值为 null 时,仍然会查询一次数据;
2019-05-11 17:07:24 +08:00
28810
4481064f4e Include 贪婪加载第一版,已通过集合的导航数据加载,包括 OneToMany/ManyToMany 2019-05-11 06:17:09 +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
24df5d6107 - 增加 Column.MapType 类型映射,可将 enum 映射为 int/string 等; 2019-04-26 06:30:30 +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
2881099
191a15fb42 自动贪婪加载 LeftJoin/InnerJoin/RightJoin 数据 2019-04-20 01:21:57 +08:00
28810
8d266a556e 修复 IsIgnore 过滤字段后,查询的错误; 2019-04-18 11:21:12 +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
2714ff360d ## v0.4.13
- 优化 MySql 日期类型精确至毫秒;
- 增加 Distinct 查询前去重数据;
2019-04-12 20:02:58 +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
37aa5c613c 微调 2019-04-04 14:31:51 +08:00
28810
1470aab6e3 ## v0.3.23
- 修复 因功能增加,导致联表查询出现的表达式函数解析 bug;
- 修复 因功能增加,导致查询数据时,ExpressionTree bug;
2019-03-22 03:52:12 +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
d9de8e986b ## v0.3.20
- 修复 ToList 选择指定对象时,应附加所有字段查询返回;
- 修复 Lazy 延时类与实体关系冲突 bug;
- 修复 附加对象读取时,记录为空应该返回null,而不是返回非null(字段默认值)对象;
2019-03-20 22:47:21 +08:00
28810
3974c35b2f 导航属性规则制约、ISelect 增加 AsSelect 用于集合属性进行子查询,自动联表查询,以及MySql实现与部分测试 2019-03-16 08:00:07 +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
4f66c3b9eb ## v0.3.11
- 增加 ISelect、IInsert、IUpdate、IDelete WithTransaction 方法,将事务对象暴露给外部;
- 增加 IAdo ExecuteXxx 系列方法重载,支持事务对象的传入;
2019-03-11 17:26:27 +08:00
28810
e66bca2fe7 v0.0.11 实现分表 2019-03-05 22:16:44 +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
a6b2b80d44 代码调整 2019-01-25 23:14:50 +08:00
28810
74df67fc13 v0.0.11 修复IAdo.Query直接查询sql的bug 2019-01-25 20:23:14 +08:00
28810
b83b86f528 update wiki 2019-01-23 16:41:11 +08:00
28810
4bf8d60361 ICodeFirst 增加 ConfigEntity 方法,现实干净实体无特性的需求 2019-01-22 12:56:45 +08:00
28810
a7896007a9 完成延时加载开发与测试,ICollection集合待支持 2019-01-19 19:11:15 +08:00
28810
56d79c9696 ExpressionTree 优化告一段落 2019-01-19 15:21:04 +08:00
28810
0068474992 Reflection 替换 ExpressionTree,单元测试已通过 2019-01-18 19:17:40 +08:00
28810
863a9ee397 ExpreessTree替代反射缓存(1) 2019-01-17 19:34:25 +08:00
28810
ed239835c6 反射+缓存性能优化,接近dapper 2019-01-15 18:36:43 +08:00
28810
43080a4052 SQL命令执行监视 + Pgsql表达式(Array/HStore/Jsonb)实现与测试 2018-12-28 18:25:26 +08:00
28810
0689696766 增加异步方法 2018-12-27 21:20:25 +08:00
28810
8d55cccc9a 完善聚合查询语法 2018-12-27 20:15:24 +08:00
28810
c35c69cf20 分组聚合查询 2018-12-27 19:16:49 +08:00
28810
070254127d 【测试】三大数据库,添加所有类型数据null/非空,后查询正常 2018-12-26 19:54:41 +08:00
28810
2a115ffcfe CodeFirst sqlserver支持跨库/跨schema改表名,mysql支持跨库改表名,postgresql支持跨schema改表名 2018-12-25 12:29:08 +08:00
28810
0ff422eeb6 mysql/sqlserver CodeFirst 完成测试 2018-12-22 18:13:25 +08:00