From 909fe9bc7afb1e47c815230317baef7eff49dd58 Mon Sep 17 00:00:00 2001 From: 28810 <28810@YEXIANGQIN> Date: Sun, 31 May 2020 10:42:26 +0800 Subject: [PATCH] update kingbaseES --- .../Controllers/SongController.cs | 17 +-- Examples/repository_01/Startup.cs | 8 + FreeSql.DbContext/DbSet/DbSet.cs | 1 + FreeSql.DbContext/DbSet/DbSetAsync.cs | 2 + FreeSql.DbContext/DbSet/DbSetSync.cs | 2 + FreeSql.DbContext/FreeSql.DbContext.xml | 16 -- FreeSql/FreeSql.xml | 143 ------------------ FreeSql/Internal/UtilsExpressionTree.cs | 1 + 8 files changed, 19 insertions(+), 171 deletions(-) diff --git a/Examples/repository_01/Controllers/SongController.cs b/Examples/repository_01/Controllers/SongController.cs index f64a1a8c..4381d575 100644 --- a/Examples/repository_01/Controllers/SongController.cs +++ b/Examples/repository_01/Controllers/SongController.cs @@ -1,5 +1,6 @@ using FreeSql; using Microsoft.AspNetCore.Mvc; +using repository_01; using restful.Entitys; using System; using System.Collections.Generic; @@ -32,32 +33,24 @@ namespace restful.Controllers public SongsController(IFreeSql fsql, - GuidRepository repos1, - GuidRepository repos2, - - DefaultRepository repos11, - DefaultRepository repos21, - BaseRepository repos3, BaseRepository repos4, IBaseRepository repos31, IBaseRepository repos41, - SongRepository reposSong + SongRepository reposSong, + IBaseRepository reposTest ) { - _songRepository = repos4; + Console.Write(reposTest.Select.ToSql()); + _songRepository = repos4; //test code var curd1 = fsql.GetRepository(); var curd2 = fsql.GetRepository(); var curd3 = fsql.GetRepository(); var curd4 = fsql.GetGuidRepository(); - Console.WriteLine(repos1.Select.ToSql()); Console.WriteLine(reposSong.Select.ToSql()); - Console.WriteLine(repos2.Select.ToSql()); - Console.WriteLine(repos21.Select.ToSql()); - using (reposSong.DataFilter.DisableAll()) { Console.WriteLine(reposSong.Select.ToSql()); diff --git a/Examples/repository_01/Startup.cs b/Examples/repository_01/Startup.cs index 65bb13c2..a0b904ee 100644 --- a/Examples/repository_01/Startup.cs +++ b/Examples/repository_01/Startup.cs @@ -84,4 +84,12 @@ namespace repository_01 { bool IsDeleted { get; set; } } + + public class TestSoftDelete : ISoftDelete + { + [Column(IsIdentity = true)] + public int Id { get; set; } + public string Title { get; set; } + public bool IsDeleted { get; set; } + } } diff --git a/FreeSql.DbContext/DbSet/DbSet.cs b/FreeSql.DbContext/DbSet/DbSet.cs index 6af6b0d2..4180e750 100644 --- a/FreeSql.DbContext/DbSet/DbSet.cs +++ b/FreeSql.DbContext/DbSet/DbSet.cs @@ -276,6 +276,7 @@ namespace FreeSql case DataType.OdbcSqlServer: case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: return true; default: if (_tableIdentitys.Length == 1 && _table.Primarys.Length == 1) diff --git a/FreeSql.DbContext/DbSet/DbSetAsync.cs b/FreeSql.DbContext/DbSet/DbSetAsync.cs index 774269ee..52626a89 100644 --- a/FreeSql.DbContext/DbSet/DbSetAsync.cs +++ b/FreeSql.DbContext/DbSet/DbSetAsync.cs @@ -41,6 +41,7 @@ namespace FreeSql case DataType.OdbcSqlServer: case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: if (_tableIdentitys.Length == 1 && _table.Primarys.Length == 1) { await DbContextFlushCommandAsync(); @@ -102,6 +103,7 @@ namespace FreeSql case DataType.OdbcSqlServer: case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: await DbContextFlushCommandAsync(); var rets = await this.OrmInsert(data).ExecuteInsertedAsync(); if (rets.Count != data.Count()) throw new Exception($"特别错误:批量添加失败,{_db.OrmOriginal.Ado.DataType} 的返回数据,与添加的数目不匹配"); diff --git a/FreeSql.DbContext/DbSet/DbSetSync.cs b/FreeSql.DbContext/DbSet/DbSetSync.cs index 039fed10..743dfeef 100644 --- a/FreeSql.DbContext/DbSet/DbSetSync.cs +++ b/FreeSql.DbContext/DbSet/DbSetSync.cs @@ -40,6 +40,7 @@ namespace FreeSql case DataType.OdbcSqlServer: case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: if (_tableIdentitys.Length == 1) { DbContextFlushCommand(); @@ -105,6 +106,7 @@ namespace FreeSql case DataType.OdbcSqlServer: case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: DbContextFlushCommand(); var rets = this.OrmInsert(data).ExecuteInserted(); if (rets.Count != data.Count()) throw new Exception($"特别错误:批量添加失败,{_db.OrmOriginal.Ado.DataType} 的返回数据,与添加的数目不匹配"); diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml index 4854f49c..132d875e 100644 --- a/FreeSql.DbContext/FreeSql.DbContext.xml +++ b/FreeSql.DbContext/FreeSql.DbContext.xml @@ -125,13 +125,6 @@ 清空状态数据 - - - 根据 lambda 条件删除数据 - - - - 添加 @@ -486,14 +479,5 @@ - - - 批量注入 Repository,可以参考代码自行调整 - - - - - - diff --git a/FreeSql/FreeSql.xml b/FreeSql/FreeSql.xml index 06756040..1808426b 100644 --- a/FreeSql/FreeSql.xml +++ b/FreeSql/FreeSql.xml @@ -2411,137 +2411,6 @@ - - - 查询,若使用读写分离,查询【从库】条件cmdText.StartsWith("SELECT "),否则查询【主库】 - - - - - - - - - 查询,ExecuteReaderAsync(dr => {}, "select * from user where age > ?age", new { age = 25 }) - - - - - - - 查询 - - - - - - - 查询,ExecuteArrayAsync("select * from user where age > ?age", new { age = 25 }) - - - - - - - - 查询 - - - - - - - 查询,ExecuteDataSetAsync("select * from user where age > ?age; select 2", new { age = 25 }) - - - - - - - - 查询 - - - - - - - 查询,ExecuteDataTableAsync("select * from user where age > ?age", new { age = 25 }) - - - - - - - - 在【主库】执行 - - - - - - - - 在【主库】执行,ExecuteNonQueryAsync("delete from user where age > ?age", new { age = 25 }) - - - - - - - - 在【主库】执行 - - - - - - - - 在【主库】执行,ExecuteScalarAsync("select 1 from user where age > ?age", new { age = 25 }) - - - - - - - - 执行SQL返回对象集合,QueryAsync<User>("select * from user where age > ?age", new SqlParameter { ParameterName = "age", Value = 25 }) - - - - - - - - - - 执行SQL返回对象集合,QueryAsync<User>("select * from user where age > ?age", new { age = 25 }) - - - - - - - - - 执行SQL返回对象集合,Query<User>("select * from user where age > ?age; select * from address", new SqlParameter { ParameterName = "age", Value = 25 }) - - - - - - - - - - 执行SQL返回对象集合,Query<User>("select * from user where age > ?age; select * from address", new { age = 25 }) - - - - - - 可自定义解析表达式 @@ -3144,12 +3013,6 @@ 超时 - - - 获取资源 - - - 使用完毕后,归还资源 @@ -3220,12 +3083,6 @@ 资源对象 - - - 从对象池获取对象成功的时候触发,通过该方法统计或初始化对象 - - 资源对象 - 归还对象给对象池的时候触发 diff --git a/FreeSql/Internal/UtilsExpressionTree.cs b/FreeSql/Internal/UtilsExpressionTree.cs index 7bbd8a63..4d21d6d9 100644 --- a/FreeSql/Internal/UtilsExpressionTree.cs +++ b/FreeSql/Internal/UtilsExpressionTree.cs @@ -242,6 +242,7 @@ namespace FreeSql.Internal break; case DataType.PostgreSQL: case DataType.OdbcPostgreSQL: + case DataType.OdbcKingbaseES: if (strlen < 0) colattr.DbType = "TEXT"; else colattr.DbType = Regex.Replace(colattr.DbType, charPatten, $"$1({strlen})"); break;