1.引入FastMember,替换原有的反射调用;
2.优化GetColumnInfo、GetPrimaryKey;
3.优化ToEntities、ToLists;
4.新增TryGetValue、TryGetOrAdd、ContainsKey、ToEntity字典扩展方法;
5.优化列信息获取,添加内存缓存;
6.支持Where表达式中HashSet写法解析;
7.升级nuget包;
1.优化WHERE是否包含判断;
2.新增SubstringIgnoreCase扩展方法;
3.优化字符串忽略大小写相等比较;
4.优化null空值判断,修复WhereIf参数Expression<T,bool>为null时引发的空异常bug;
1.修复数据库类型为PostgreSql时,解析bool类型条件时,解析为1的bug;
2.优化Mysql数据库bool类型sql解析;
1.优化Substring扩展,添加comparisonType参数;
2.重载Contains、ContainsIgnoreCase扩展方法,添加MatchType匹配类型参数;
3.重载ToLambda扩展方法,优化ToObject扩展方法,修复Guid类型数据解析异常bug;
4.升级nuget包;
1.优化SqlBuilderCore部分属性;
2.优化GetKeyWordIndex;
3.优化字典初始化和取值判断;
4.移除OracleColumnAttribute和Oracle插入更新扩展,采用DataTypeAttribute特性进行替代即可;
5.优化GetColumnInfo和GetPrimaryKey返回类型;
6.KeyAttribute特性新增OracleSequenceName;
7.重载仓储Insert,支持返回自增主键值;
1.新增DataType特性,允许自定义表实体单个字段数据库类型;
2.优化仓储Dispose方法;
1.重命名AddSqlBuilder -> RegisterSqlBuilder,使其更符合Autofac的命名风格;
2.新增ToJson扩展方法;
3.新增自定义SqlBuilder日志诊断订阅扩展;
1.新增Autofac扩展类,添加AddSqlBuilder扩展方法;
1.优化select单表sql解析,移除单表表别名;
2.count解析支持多表连接查询;
1.优化SqlBuilderCore的Page方法排序逻辑;
1.优化OracleRepository支持Oracle12c及以上版本最新FETCH NEXT分页语法;
2.统一仓储分页语法OrderField位置,修复部分情况下分页必须查询出排序字段的bug;
3.注意MySql、PostgreSql、Sqlite、SqlServer分页排序逻辑已修改,修复排序字段必须在查询结果中的bug,需注意多表连接查询分页时,必要时需指明排序字段的表别名;
1.新增OracleDynamicParameters参数类型的Oracle Insert和Update扩展方法;
2.优化WeightRoundRobinLoadBalancer;
1.修复SQLiteConnection对象Dispose后无法再次访问导致的异常bug;
2.升级nuget依赖引用包到最新版本;